【发布时间】:2017-08-05 03:41:33
【问题描述】:
我有以下资源,但我不确定如何为这个特定目标解释它们(this 和this)。我正在通过 Node.js 使用 Selenium WebDriver,到目前为止,我的所有测试都按我的意愿工作,但现在我希望向它添加命令行选项以使其更具动态性。就目前而言,我的测试文件名为 mytests.js。要开始这些测试,我只需在终端中运行以下命令。
node mytests.js
这开始了我所有的 100 多个测试。问题是这些都需要很长时间才能完成。可能需要 45 分钟到 1.5 小时。我想添加选项以根据命令行的输入选择实际运行的测试或测试集。所以我的目标是拥有这样的东西:
node mytests.js targetName
因此,请记住,“targetName”只是专注于并应用与给定目标/url 相关的测试。这只是一个例子。我的测试文件的开头如下所示:
var webdriver = require('selenium-webdriver'),
By = webdriver.By,
until = webdriver.until;
var chrome = require('selenium-webdriver/chrome');
var path = require('chromedriver').path;
var service = new chrome.ServiceBuilder(path).build();
chrome.setDefaultService(service);
var driver = new webdriver.Builder()
.forBrowser('chrome')
.build();
driver.manage().logs().get('browser');
// . . .
我可以添加什么来使添加命令行选项成为可能?有人可以提供一个 JavaScript 示例,而不仅仅是指向其他页面的链接吗?
【问题讨论】:
-
您应该研究 Node.js 的 JUnit、NUnit、TestNG 等的等价物。我确定存在一个,这应该可以帮助您弄清楚如何做到这一点。对于其他这些,有一个 XML 文件,您可以在其中指定运行的内容和其他设置。
标签: javascript node.js selenium selenium-webdriver command-line