2013-12-18 91 views
0

我正在使用jmeter测试我们的产品的一些API。要测试api来验证用户的电子邮件地址,我需要登录到邮件帐户。我有测试用户的电子邮件和密码。如何在jmeter中使用api或其他任何方式登录?如何使用jmeter登录到电子邮件地址?

有没有可能?

回答

1

是的,这是可能的。您必须创建一个包含多个步骤的测试计划,但这些步骤取决于登录的具体实现。

首先,你必须确定在以下两个位置:

  • GET请求获得初始登录表单(如果需要)。
  • 张贴登录凭证的POST请求。

如果您的服务具有无状态登录表单,您甚至可以跳过第一步。

否则,GET请求的响应将包含需要提取的东西(例如,如果您使用JSF,则为JSESSIONID)并作为POST请求中的参数发送。您可以使用JMeter的Regular Expression Extractor来提取这些值并将它们作为变量提供给后续请求使用。

这里是一个HTTP Request元件的配置为登录数据POST到URL的示例屏幕截图/common/j_security_check

POST request example

+0

难道我需要对GET和POST请求的API网址?对不起,如果这是一个天真的问题。 – Kevin

+0

是的,您可以修改PATH字段中的api url。 – unwichtich

+0

我的意思是要登录的API的URL。我如何得到这个? – Kevin

0

还可能需要从服务器响应截取的认证令牌,并且然后传递到下面的要求。

这里是一个博客条目与一对夫妇的视频教程上登录使用JMeter:
http://community.blazemeter.com/knowledgebase/articles/80479-how-to-use-jmeter-for-login-authentication

+0

好吧我要澄清我的问题。用户输入一个电子邮件地址,然后我们发送一个身份验证令牌作为该电子邮件地址的链接。用户点击确认电子邮件地址。现在这个“点击链接”需要在J-meter中复制。 api不会在响应中返回认证令牌。 :(我没有正确理解你的答案? – Kevin

0

您可以使用JMeter的登录, 两种方式: 参数使用CSV文件(适用于更多的用户)/用户(UDV) 登录配置元素(针对单个用户)

相关问题