我们使用的是eclipse luna 4.4.1,linux系统上安装了adb来测试android app。
我录制了一个monkeytalk脚本。所以我的问题是如何运行该 monkeytalk 录制的脚本 500 次。但是在每个循环中,输入数据的值应该是变化的(验证的东西)。例如:我记录了注册帐户。所以需要运行 500 次才能创建 500 个不同的帐户。
提前致谢。
我们使用的是eclipse luna 4.4.1,linux系统上安装了adb来测试android app。
我录制了一个monkeytalk脚本。所以我的问题是如何运行该 monkeytalk 录制的脚本 500 次。但是在每个循环中,输入数据的值应该是变化的(验证的东西)。例如:我记录了注册帐户。所以需要运行 500 次才能创建 500 个不同的帐户。
提前致谢。
您必须使用参数化。
这只是当您在脚本中使用变量而不是硬编码值时。这使您有机会在每次新运行时为该变量分配新值。
这是官方文档中有关参数化脚本的示例:
Vars * Define usr="default-at-example.com" pwd
Input username EnterText ${usr}
Input password EnterText ${pwd}
Button LOGIN Tap
在这个清单中,您可以看到您已经使用默认值(“default-at-example.com”)定义了“usr”变量。
因此,您可以通过多种不同方式调用参数化脚本。
在这种情况下,“pwd”变量将具有“我喜欢奶酪”的值:
Script login.mt Run joe-at-doe.com "i like cheese"
以下示例显示了脚本调用,但没有为变量指定任何参数:
Script login.mt Run * password1
它将具有以下效果:变量“usr”将具有其默认值,“pwd”变量将具有“password1”值
不要忘记这些变量的范围仅限于脚本。这意味着它们是可见的,并且只能在已定义它们的脚本内部使用。
此外,您可以使用外部数据源来为您的测试提供数据。这称为数据驱动测试。这是一个使用 *.csv 文件(逗号分隔)作为数据源的脚本示例:
//data.csv
joe-at-doe.com, "i like cheese"
alpha-at-beta.net, password1
charlie-at-dog.org, abc123
为了使用这样的 *.csv 文件,只需运行以下命令:
Script login.mt RunWith data.csv