一次用 c# 编写测试用例 50 个人在 asp.net c# 中调用相同的进程

Write Test case in c# at a time 50 people call same process in asp.net c#

我想创建允许一次命中 50 次的测试用例,分别获得它们的结果。

想知道如果一次来50个人会怎样

如果您希望创建负载测试,那么您可以使用 visual studio enterprise 2017 创建和 运行 负载测试。

您也可以使用像 JMeter 这样的免费工具,虽然不是很花哨,但可以完成工作。

你没有提到你为什么不想使用 foreach,但这里有一个用 LINQ 来做的方法,假设你有一个可以用函数调用的单用户测试命名为 ExecuteTestForAUser()(您的可能不同):

const numberOfTests = 50;
var tasks = Enumerable.Range(1, numberOfTests)
    .Select
    ( 
        i => Task.Run( () => ExecuteTestForAUser() ) 
    )
    .ToArray();
Task.WaitAll( tasks );

此代码使用 Enumerable.Range 生成包含 50 个整数的列表。然后使用 Select 将该列表转换为包含 50 个任务的列表。 Task.Run() 将把每个任务放到线程池中。然后 Task.WaitAll() 将阻塞执行,直到它们全部完成。

您需要确保 ExecuteTestForAUser() 是线程安全的。