diff options
| author | Morten Sorvig <msorvig@trolltech.com> | 2009-08-19 06:17:23 +0200 |
|---|---|---|
| committer | Morten Sorvig <msorvig@trolltech.com> | 2009-08-19 06:18:00 +0200 |
| commit | 0cef0206c94c20d287bc38b7ce517839b5dafe12 (patch) | |
| tree | 1b65e8f230ccb2e6e7560dfa301db88f26db17ae | |
| parent | 1a6fd4f87ec2bcad55765c189e6659e49c1e6dc4 (diff) | |
Add load testing application
| -rw-r--r-- | loadtester/loadtester.pro | 18 | ||||
| -rw-r--r-- | loadtester/main.cpp | 10 | ||||
| -rw-r--r-- | loadtester/mainwindow.cpp | 40 | ||||
| -rw-r--r-- | loadtester/mainwindow.h | 28 | ||||
| -rw-r--r-- | loadtester/mainwindow.ui | 133 |
5 files changed, 229 insertions, 0 deletions
diff --git a/loadtester/loadtester.pro b/loadtester/loadtester.pro new file mode 100644 index 0000000..0286763 --- /dev/null +++ b/loadtester/loadtester.pro @@ -0,0 +1,18 @@ +#------------------------------------------------- +# +# Project created by QtCreator 2009-08-18T15:16:56 +# +#------------------------------------------------- + +QT += webkit + +TARGET = loadtester +TEMPLATE = app + + +SOURCES += main.cpp\ + mainwindow.cpp + +HEADERS += mainwindow.h + +FORMS += mainwindow.ui diff --git a/loadtester/main.cpp b/loadtester/main.cpp new file mode 100644 index 0000000..6e7efd9 --- /dev/null +++ b/loadtester/main.cpp @@ -0,0 +1,10 @@ +#include <QtGui/QApplication> +#include "mainwindow.h" + +int main(int argc, char *argv[]) +{ + QApplication a(argc, argv); + MainWindow w; + w.show(); + return a.exec(); +} diff --git a/loadtester/mainwindow.cpp b/loadtester/mainwindow.cpp new file mode 100644 index 0000000..383996f --- /dev/null +++ b/loadtester/mainwindow.cpp @@ -0,0 +1,40 @@ +#include "mainwindow.h" +#include "ui_mainwindow.h" +#include <QWebView> + +MainWindow::MainWindow(QWidget *parent) + : QMainWindow(parent), ui(new Ui::MainWindow) +{ + pageCount = 0; + ui->setupUi(this); + connect(ui->pushButton_go, SIGNAL(clicked()), SLOT(loadPages())); + connect(ui->lineEdit_url, SIGNAL(returnPressed()), SLOT(loadPages())); + connect(ui->spinBox_pageSelect, SIGNAL(valueChanged(int)), SLOT(showPage(int))); +} + +MainWindow::~MainWindow() +{ + delete ui; +} + +void MainWindow::loadPages() +{ + for (int i = 0; i < ui->spinBox_connectCount->value(); ++i) { + QWebView *webView = new QWebView(this); + webView->load(QUrl(ui->lineEdit_url->text())); + ui->stackedWidget_pages->addWidget(webView); + } + pageCount += ui->spinBox_connectCount->value(); + ui->lineEdit_pageCount->setText(QString::number(pageCount)); + ui->spinBox_pageSelect->setMaximum(pageCount); +} + +void MainWindow::showPage(int page) +{ + ui->stackedWidget_pages->setCurrentIndex(page); +} + +void MainWindow::pageLoaded() +{ + +} diff --git a/loadtester/mainwindow.h b/loadtester/mainwindow.h new file mode 100644 index 0000000..563da1f --- /dev/null +++ b/loadtester/mainwindow.h @@ -0,0 +1,28 @@ +#ifndef MAINWINDOW_H +#define MAINWINDOW_H + +#include <QtGui/QMainWindow> + +namespace Ui +{ + class MainWindow; +} + +class MainWindow : public QMainWindow +{ + Q_OBJECT + +public: + MainWindow(QWidget *parent = 0); + ~MainWindow(); + +private slots: + void loadPages(); + void showPage(int page); + void pageLoaded(); +private: + Ui::MainWindow *ui; + int pageCount; +}; + +#endif // MAINWINDOW_H diff --git a/loadtester/mainwindow.ui b/loadtester/mainwindow.ui new file mode 100644 index 0000000..3076b93 --- /dev/null +++ b/loadtester/mainwindow.ui @@ -0,0 +1,133 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ui version="4.0"> + <class>MainWindow</class> + <widget class="QMainWindow" name="MainWindow"> + <property name="geometry"> + <rect> + <x>0</x> + <y>0</y> + <width>600</width> + <height>400</height> + </rect> + </property> + <property name="windowTitle"> + <string>MainWindow</string> + </property> + <widget class="QWidget" name="centralWidget"> + <layout class="QVBoxLayout" name="verticalLayout"> + <item> + <layout class="QHBoxLayout" name="horizontalLayout_2"> + <item> + <widget class="QLabel" name="label"> + <property name="text"> + <string>Connect to:</string> + </property> + </widget> + </item> + <item> + <widget class="QLineEdit" name="lineEdit_url"> + <property name="text"> + <string>http://localhost:1818</string> + </property> + </widget> + </item> + <item> + <widget class="QLabel" name="label_2"> + <property name="text"> + <string>Count</string> + </property> + </widget> + </item> + <item> + <widget class="QSpinBox" name="spinBox_connectCount"> + <property name="maximum"> + <number>999999999</number> + </property> + <property name="value"> + <number>1</number> + </property> + </widget> + </item> + <item> + <widget class="QPushButton" name="pushButton_go"> + <property name="text"> + <string>Go!</string> + </property> + </widget> + </item> + </layout> + </item> + <item> + <widget class="QStackedWidget" name="stackedWidget_pages"> + </widget> + </item> + <item> + <layout class="QHBoxLayout" name="horizontalLayout"> + <item> + <widget class="QLabel" name="label_3"> + <property name="text"> + <string>Page Count</string> + </property> + </widget> + </item> + <item> + <widget class="QLineEdit" name="lineEdit_pageCount"> + <property name="sizePolicy"> + <sizepolicy hsizetype="Minimum" vsizetype="Fixed"> + <horstretch>0</horstretch> + <verstretch>0</verstretch> + </sizepolicy> + </property> + </widget> + </item> + <item> + <widget class="QLabel" name="label_4"> + <property name="text"> + <string>Show Page</string> + </property> + </widget> + </item> + <item> + <widget class="QSpinBox" name="spinBox_pageSelect"/> + </item> + <item> + <spacer name="horizontalSpacer"> + <property name="orientation"> + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" stdset="0"> + <size> + <width>40</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + </layout> + </item> + </layout> + </widget> + <widget class="QMenuBar" name="menuBar"> + <property name="geometry"> + <rect> + <x>0</x> + <y>0</y> + <width>600</width> + <height>21</height> + </rect> + </property> + </widget> + <widget class="QToolBar" name="mainToolBar"> + <attribute name="toolBarArea"> + <enum>TopToolBarArea</enum> + </attribute> + <attribute name="toolBarBreak"> + <bool>false</bool> + </attribute> + </widget> + <widget class="QStatusBar" name="statusBar"/> + </widget> + <layoutdefault spacing="6" margin="11"/> + <resources/> + <connections/> +</ui> |
