【问题标题】:Running multiplay test with junit and TAURUS使用 junit 和 TAURUS 运行多人游戏测试
【发布时间】:2016-08-30 06:48:34
【问题描述】:

我希望有人可以帮助我,这篇文章可以对其他人有所帮助。我有一个项目需要测试页面加载。性能工具是TAURUS。该项目带有登录页面(令牌)。

问题是:

当我拥有登录表单时,如何对特定页面执行页面加载测试。下面是我的代码示例。

或者当我有一个大的依赖测试并且在测试中我有 10 个不同的页面并且一些页面包含附件文件时,如何告诉测试我想要测量不同页面的页面加载时间?

code:
TEST.yml
---
execution:
- executor: selenium
  scenario: simple
  concurrency: 1

scenarios:
 simple:
  requests:
  - http://10.32.1.114:9080
  method: GET
  script: /home/xxxxx/Desktop/XXXXX/src/test/java/Testing_2.java
  additional-classpath: ~/.bzt/jmeter-taurus/lib/selenium-java-2.53.1.jar

modules:
 selenium:
  selenium-tools:
   junit:
    path: ~/.bzt/jmeter-taurus/lib/junit-4.12.jar
    compile-target-java: 1.7
    hamcrest-core: ~/.bzt/jmeter-taurus/lib/hamcrest-core-1.3.jar

cli-aliases:
  report:
   reporting:
   - blazemeter


Testing_2.java
*****************************************************************''

WebDriver driver = new FirefoxDriver();

@Before
public void setup() {
    driver.navigate().to("http://10.111.111.114:9080");
}

@Test
public void login() throws InterruptedException {
    WebDriverWait wait = new WebDriverWait(driver, 60);

    driver.findElement(By.cssSelector("a[ng-click='vm.closeTokenForm()']")).click();

    driver.findElement(By.cssSelector("div[class='text-center']")).getText();

    driver.findElement(By.linkText(user)).click();

    Thread.sleep(2000);

    WebElement table = driver.findElement(By.cssSelector("table[class='large-12 columns ng-scope']"));
    java.util.List<WebElement> tr_collection = table.findElements(By.cssSelector("tbody > tr"));
    wait.until(ExpectedConditions.visibilityOfAllElements(tr_collection)).size();
}

@After
public void close() {
    driver.close();
}

blazemeter 论坛链接:LINK

【问题讨论】:

    标签: java selenium junit jmeter performance-testing


    【解决方案1】:

    如果您想测试页面加载,您可以使用场景的请求选项编写简单的脚本。您可以编写简单的场景页面加载并运行它。

    例子:

    execution:
    - executor: selenium
      scenario: simple
      concurrency: 1
    
    scenarios:
     request-example:
      default-address://10.32.1.114:9080
      browser: Firefox
      timeout: 60
      think-time: 2s
      requests:
      - url: /
        actions:
        - clickByCSS("a[ng-click='vm.closeTokenForm()']")
        - waitByCSS("div[class='text-center']"):visible
        - clickByLinkText(user)
        - waitByCSS("table[class='large-12 columns ng-scope']"):visible
    

    如果你想测量不同页面(page1.html和page2.html)的页面加载时间,那么你可以这样写:

    scenarios:
     request-example:
      default-address://10.32.1.114:9080
      browser: Firefox
      timeout: 60
      think-time: 2s
      requests:
      - url: /page1.html
        actions:
        - clickByCSS("a[ng-click='vm.closeTokenForm()']")
        - waitByCSS("div[class='text-center']"):visible
        - clickByLinkText(user)
        - waitByCSS("table[class='large-12 columns ng-scope']"):visible
      - url: /page2.html
        actions:
        - clickByCSS("a[ng-click='vm.closeTokenForm()']")
        - waitByCSS("div[class='text-center']"):visible
        - clickByLinkText(user)
        - waitByCSS("table[class='large-12 columns ng-scope']"):visible
    

    我们在 Taurus 仪表板上看到的结果。每个页面分别显示平均时间。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-19
      • 2021-09-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多