繁体   English   中英

持续集成的C#GUI测试

[英]C# GUI testing from Continuous Integration

我有一个WPF应用程序和一组GUI单元测试。 这些测试将加载应用程序,然后移动鼠标并单击内容。 如果我在登录时运行它,则效果很好。

但是,当测试在我们的持续集成服务器上运行时,鼠标始终将其位置报告为(0,0)。 如果我告诉鼠标移动然后检查其位置,则它仍然是(0,0)。

我们选中了“允许服务与桌面交互”运行的服务,并且Environment.UserInteractive为true。

另外,如果我在本地启动测试运行然后锁定屏幕,则鼠标具有相同的行为(位置始终为0,0)。

服务运行时如何使用鼠标?

我认为本文可以阐明为什么您的应用程序没有达到您期望的鼠标位置。 我假设您正在Vista和更高版本上运行测试。

我认为这是正在发生的事情。 您的服务在会话0(非交互式会话)中运行。 因此,鼠标实际上在那里不存在。

当您锁定桌面时,Windows将切换到WinLogon桌面并窃取鼠标。 在普通桌面上运行的应用程序不再需要使用鼠标。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM