使用 nightwatchjs 中的新数据再次重复步骤
Repeating steps again with the new data in nightwatchjs
我有一个csv数据。我想重复每个步骤,除了 nightwatchjs 中的读取 csv 步骤,然后用 csv 的每一行执行这些步骤。使用 nightwatchjs 怎么可能?
步骤是这样的
module.exports =
{
"ReadCsv" : function(client) {
// This will have an array of csvData
},
"StepOne" : function(client) {
//Code goes there...
},
"StepTwo" : function(client) {
//Code goes there...
},
"StepThree" : function(client) {
//Code goes there...
},
}
我想对 csvData 的每一行重复步骤 StepOne、StepTwo 和 StepThree,以便可以测试所有内容。我试过的是
"loopUntilEnd" : function(client)
{
for (var i = 1; i < csvData.length; i++)
{
this.StepOne(client, csvData[i])
this.StepTwo(client)
this.StepThree(client)
}
},
但是没有用。
我找到的解决方案是使用 bash 脚本并循环 csv 数据并执行 nightwatchjs 直到一切都完成。
我的shell脚本会是这样的。
#!/bin/bash
export IFS=","
cat mycsv.csv |
while read a b c d;
do echo "$a:$b:$c:$d";
nightwatch -t tests/test-script.js $a:$b:$c:$d;
done
然后在 nightwatchjs 的 global.js 文件中接受这样的 csv 数据
CSV_DATA : process.argv[4].split(":").join(" "),
我有一个csv数据。我想重复每个步骤,除了 nightwatchjs 中的读取 csv 步骤,然后用 csv 的每一行执行这些步骤。使用 nightwatchjs 怎么可能?
步骤是这样的
module.exports =
{
"ReadCsv" : function(client) {
// This will have an array of csvData
},
"StepOne" : function(client) {
//Code goes there...
},
"StepTwo" : function(client) {
//Code goes there...
},
"StepThree" : function(client) {
//Code goes there...
},
}
我想对 csvData 的每一行重复步骤 StepOne、StepTwo 和 StepThree,以便可以测试所有内容。我试过的是
"loopUntilEnd" : function(client)
{
for (var i = 1; i < csvData.length; i++)
{
this.StepOne(client, csvData[i])
this.StepTwo(client)
this.StepThree(client)
}
},
但是没有用。
我找到的解决方案是使用 bash 脚本并循环 csv 数据并执行 nightwatchjs 直到一切都完成。
我的shell脚本会是这样的。
#!/bin/bash
export IFS=","
cat mycsv.csv |
while read a b c d;
do echo "$a:$b:$c:$d";
nightwatch -t tests/test-script.js $a:$b:$c:$d;
done
然后在 nightwatchjs 的 global.js 文件中接受这样的 csv 数据
CSV_DATA : process.argv[4].split(":").join(" "),