gpt4 book ai didi

php - 在 firefox 中使用 selenium 插件时,我们如何放置时间戳等动态输入?

转载 作者:行者123 更新时间:2023-11-28 20:21:20 27 4
gpt4 key购买 nike

我正在使用 Selenium 。我通过使用 firefox 插件来使用它。但我在使用它时遇到问题。例如,我需要发布 100 个帖子(我需要它们有不同的标题,范围从 1-100),而不必复制粘贴上一个命令并更改其属性值

如果我的描述太模糊,我很抱歉。简而言之,它是关于如何在输入动态的情况下创建单元套装。是否可以使用 selenium 插件?

最佳答案

您需要将 Selenium 测试用例从 IDE 导出为您选择的编程语言,然后对其进行调整。

考虑这个 Selenese 测试示例 - 在 Selenium IDE 中重新排序,它导航到某个论坛,单击“新帖子”按钮,输入标题为“Title 50”,然后单击“发布”按钮:

open | /viewforum.php?f=19 | |  
clickAndWait | btnNewPost | |
type | subject | Title 50 |
clickAndWait | btnPost | |

之后,您将此测试导出为 Java JUnit(例如),您将获得以下代码:

package com.example.tests;

import com.thoughtworks.selenium.*;
import java.util.regex.Pattern;

public class PostTest extends SeleneseTestCase {
public void setUp() throws Exception {
setUp("http://www.forum.com/", "*chrome");
}
public void testCreatePost() throws Exception {
selenium.open("/viewforum.php?f=19");
selenium.click("btnNewPost");
selenium.waitForPageToLoad("30000");
selenium.type("subject", "Title 50");
selenium.click("btnPost");
selenium.waitForPageToLoad("30000");
}
}

所以您需要做的是添加一个循环,该循环将创建标题为“Title 001”到“Title 100”的帖子:

public void testCreatePost() throws Exception {
for (int i=1; i<=100; i++) {
selenium.open("/viewforum.php?f=19");
selenium.click("btnNewPost");
selenium.waitForPageToLoad("30000");
selenium.type("subject", String.format("Title %03d", i));
selenium.click("btnPost");
selenium.waitForPageToLoad("30000");
}
}

您将需要 Selenium RC 来运行此测试 - 请参阅 Selenium documentation

关于php - 在 firefox 中使用 selenium 插件时,我们如何放置时间戳等动态输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3403955/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com