【发布时间】:2018-02-26 08:36:15
【问题描述】:
我想使用 Visual Studio 进行负载测试,但我不知道如何设置使用经过身份验证的用户进行负载测试。
想象一下我的场景。这应该是一个很常见的问题:
- 您需要使用用户名和密码进行身份验证的网站。
执行仅允许经过身份验证的用户的操作
到目前为止我做了什么:
- 我已经用 Selenium 编写了 UI 测试:
(这很好用)
更新:我的 Selenium 测试类:我想将此代码用于负载测试。
这是一个数据驱动的单元测试项目,你可以参见方法 TestCase4529
[TestClass]
public class Scenario2
{
private IWebDriver driver;
public TestContext TestContext { get; set; }
[TestInitialize]
public void SetupTest()
{
this.driver = new ChromeDriver();
this.driver.Manage().Timeouts().ImplicitWait = new TimeSpan(0, 0, 30);
}
[TestCleanup]
public void TeardownTest()
{
this.driver.Quit();
}
[DataSource("Microsoft.VisualStudio.TestTools.DataSource.CSV", "|DataDirectory|\\4529.csv", "4529#csv", DataAccessMethod.Sequential), DeploymentItem("4529.csv"), TestMethod]
public void TestCase4529()
{
var userName = TestContext.DataRow["UserName"].ToString();
var password = TestContext.DataRow["Password"].ToString();
// UI Test logic
var loginPage = new LoginPage(this.driver);
loginPage.FillForm(userName, password);
loginPage.LoginButton.Click();
// Some assertions
}
}
现在,当我在 Visual Studio 中设置负载测试时,我被问到应该有多少用户做某事:
我不明白这个数字的含义:
- 是否仅表示同时线程数?
- 如何在我的 Selenium 测试中获得用户(在负载测试中定义)和经过身份验证的用户之间的连接?
我想要达到的目标:
- 负载测试中定义的每个用户都应该是我的 selenium UI 测试中经过身份验证的用户。
谁能给我一个想法,或者我想错了什么......
【问题讨论】:
-
在一个站点上同时运行 25 个浏览器,您很可能正在对站点进行负载测试。您应该通过仅发送请求来对服务器进行负载测试。
标签: visual-studio selenium visual-studio-2017 azure-devops load-testing