我有以下资源,但我不确定如何针对此特定目标(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中提供一个示例,而不是仅提供指向其他页面的链接吗?
答案 0 :(得分:0)
我的一个朋友指示我查看process.argv变量。它给了我完全解决这个问题所需要的东西。 :)
所以,将以下内容添加到mytest.js:
console.log(process.argv);
将回显控制台的跟随。
$ node mytests.js this is a command
[ 'mytests.js',
'this',
'is',
'a',
'command' ]