0

总的来说,我对后端测试和所有脚本都很陌生,但这是我在使用 selenium IDE 的前端测试中很容易做到的事情。基本上,在我的自动化中,我想在每次运行自动化时创建一个新的动态用户名/电子邮件和密码,并在该套件的所有进一步测试中使用这些凭据。

我创建了一个凭据测试步骤,用户名和密码设置如下:

用户名:testemail{Math.round (Math.random() * 100000)}@example.com 密码:woof{Math.round (Math.random() * 100000)}

在注册 API REST 请求中,我输入了以下 json

{

"email": "${Credentials#Username}" ,

"password": "${Credentials#Password}" ,

"country": "us" ,

"firstname": "John" ,

"lastname": "Smith" ,

"lang": "C"

}

但它似乎是这样通过的:

{

"email": "testemail{Math.round (Math.random() * 100000)}@example.com" ,

"password": "woof{Math.round (Math.random() * 100000)}" ,

"country": "us" ,

"firstname": "John" ,

"lastname": "Smith" ,

"lang": "C"

}

我究竟做错了什么?感谢所有帮助!

4

1 回答 1

1

随机值生成和设置属性应该在 groovy 脚本测试步骤中完成。在 groovy 脚本中这样写:

import java.util.Random

//generating random values
Random rand = new Random()
String username = "testmail" + rand.nextInt(100000) + "@example.com"
String password = "woof" + rand.nextInt(100000)

//setting test case properties
testRunner.testCase.setPropertyValue("username", username);
testRunner.testCase.setPropertyValue("password", password);

在测试用例中,您可以以 ${#testcase_name#property_name} 的形式访问此属性。

有关此处属性的更多信息:http:
//www.soapui.org/Scripting-Properties/tips-a-tricks.html#1-accessing-properties-settings-and-names

关于这里的脚本:http:
//www.soapui.org/Scripting-Properties/scripting-and-the-script-library.html

于 2013-08-29T04:26:26.407 回答