WiFi QC自动测试:Qt控制无线路由器

发表于:2015-4-27 11:02

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:crazy_thb    来源:51Testing软件测试网采编

  在测试wifi的时候,测试人员一般要使用很多不同型号的AP,并且需要不断地切换Chariot的配置。
  这里的思路是致力于提供一个友好的GUI界面来自动控制AP,并且自动控制Chariot进行Throughput的测试。
  这里Chariot的部分就不提了,可以自行参照Chariot的c API或者tcl的API进行程序设计。
  这里先给出一个实例,那就是Tplink的AP,待完善之后可以将每一个AP做成一个配置文件,方便扩展。
  先祭出Qt代码吧:
#include "dialog.h"
#include "ui_dialog.h"
#include <QDebug>
Dialog::Dialog(QWidget *parent) :
QDialog(parent),
ui(new Ui::Dialog)
{
ui->setupUi(this);
manager = new QNetworkAccessManager(this);
connect(manager,SIGNAL(finished(QNetworkReply*)), this,SLOT(replyFinished(QNetworkReply*)));
}
Dialog::~Dialog()
{
delete ui;
}
void Dialog::replyFinished(QNetworkReply *reply)  //当回复结束后
{
QByteArray  reply_str;
switch (reply->error()) {
case QNetworkReply::AuthenticationRequiredError:
qDebug()<<"AUTH REQUIRED";
qDebug()<< reply->rawHeaderList();
qDebug()<< reply->rawHeaderPairs();
/* no break */
case QNetworkReply::NoError:
reply_str = reply->readAll();
ui->text->setPlainText(QString::fromUtf8(reply_str));
reply->deleteLater();
break;
default:
qDebug()<<"ERROR WHEN REPLY:" << reply->error();
}
}
void Dialog::on_init_clicked()
{
manager->get(QNetworkRequest(QUrl("http://192.168.2.1")));
}
/*
Authorization: Basic YWRtaW46YWRtaW4=
Accept: text/html
User-Agent: Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.122 Safari/537.36
Accept-Encoding: gzip,deflate,sdch
Accept-Language: zh-CN,zh;q=0.8
*/
void Dialog::on_start_clicked()
{
QString get_str = "http://192.168.2.1/userRpm/WlanNetworkRpm.htm?ssid1=haha&wlMode=2&channel=3&mode=5 \
&chanWidth=2&ap=1&broadcast=2&brlssid=&brlbssid= \
&keytype=1&wepindex=1&authtype=1&keytext=&Save=%B1%A3+%B4%E6 HTTP/1.1";
QUrl url(get_str);
QNetworkRequest req;
req.setUrl(url);
req.setRawHeader("Authorization", "Basic YWRtaW46YWRtaW4=");
manager->get(req);
}
21/212>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号