gpt4 book ai didi

c# - 编码的 UI WebTest,有时在编辑字段中省略键入的字符

转载 作者:行者123 更新时间:2023-11-30 16:25:37 26 4
gpt4 key购买 nike

** 更新后 **

对于 Microsoft Dynamics 环境中的系统和集成测试,我们使用 Visual Studio 2010 Coded UI。我是一个没有经验的 Visual Studio 用户,但有测试自动化方面的经验。

每当 VS-Coded-UI-test 在编辑框中键入文本时,都会发生更改,即省略了必须键入的字符之一。像 Beverly Hills 90210 这样的地址字段很容易变成 Beverly ills 90210,这会破坏我的测试。它发生在 200 个字符中的大约 1 个(有根据的猜测)。

有人遇到过这种情况吗?问题可能出在哪里:VS 的输入速率、损坏的键盘驱动程序、浏览器的打嗝导致它无法正确接收文本输入,还是其他原因?

是否有可能降低 VS coded ui 中测试驱动程序的打字率?

更新,2012-05-24:仍然没有找到解决方案。我现在使用一种解决方法来减少失败的变化,但它仍然不理想。

变通代码(是的,它很脏):

// put this method in a base class or easy accessable component
protected void ExecuteWithRetry(Action method, int maxRetryCount = 2)
{
try
{
method();
}
catch (Exception)
{
if (maxRetryCount > 0)
{
ExecuteWithRetry(method, maxRetryCount - 1);
}
else
{
throw;
}
}
}

每当我使用一段设置文本字段的代码时,我都会通过以下方法调用它:

UIMap.SetUserfieldsParams.EnterAddress = @"555 Sunset Boulevard";
UIMap.SetUserfieldsParams.EnterZIP = @"90210";
ExecuteWithRetry(UIMap.SetUserfields);

更新,2012-06-18:这似乎是由我们使用的模拟引起的。我们的网络应用程序的登录用户是通过启动 IE 的用户名直接从 AD 服务器中提取的。通过模拟启动 IE,我们可以与其他用户一起进行测试,而无需(手动)注销并登录到 Windows。我们通过在命名空间 System.Diagnostics.Process

中使用 Process.Start(ProcessStartInfo startInfo) 来使用模拟

最佳答案

我的第一个猜测是它正在发生,因为它正在快速键入并且您的应用程序尚未准备好接收下一个键。您可以使用 KeyBoard.SendKeysDelay 更改输入键之间的时间,我机器上的默认值至少为 10 毫秒。

您碰巧关闭了错误时继续吗?当输入值时,您没有收到停止测试的异常,我感到有点惊讶。

关于c# - 编码的 UI WebTest,有时在编辑字段中省略键入的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9717128/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com