testing - 上传文件时 Watin 测试挂起应用程序

标签 testing nunit teamcity watin

我的 watin 测试有问题,应该浏览 pdf 并将其上传到网页。这个测试在我的机器上运行顺利,总能找到 pdf,点击提交并等待 30 秒上传完成。

但是当我尝试在构建机器 (teamcity) 上运行此测试时,该测试恰好在它应该等待上传的时候挂起。问题是测试不会超时,即使我在 1 分钟的 nunit 上为整个测试设置超时,或者尝试重新加载页面。测试只是在上传步骤卡住了整个网站。

测试此功能非常重要,但由于那些带有上传的测试会挂起整个构建,我们必须手动进行,这并不是测试自动化的真正想法。

有谁知道如何解决这个上传问题?或者至少设法让这个测试超时。

stack trace = at System.RuntimeType.InvokeDispMethod(String name, BindingFlags invokeAttr, Object target, Object[] args, Boolean[] byrefModifiers, Int32 culture, String[] namedParameters)
  at System.RuntimeType.InvokeMember(String name, BindingFlags bindingFlags, Binder binder, Object target, Object[] providedArgs, ParameterModifier[] modifiers, CultureInfo culture, String[] namedParams)
  at System.RuntimeType.ForwardCallToInvokeMember(String memberName, BindingFlags flags, Object target, Int32[] aWrapperTypes, MessageData& msgData)
  at mshtml.DispHTMLBaseElement.click()
  at WatiN.Core.InternetExplorer.IEElement.ClickOnElement()
  at WatiN.Core.Element.Click()
  at WatiN.Core.FileUpload.Set(String fileName)

最佳答案

问题是 WatiN 使用 sendkeys 设置要上传的文件(名称)。在 WatiN 2.0 beta 1 中,这被更改为使用一些 API 调用。这解决了在自动化需要文本输入的对话框时挂起测试的问题。

关于testing - 上传文件时 Watin 测试挂起应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/569447/

相关文章:

java - 断言文件已在 Junit (Java 6) 中创建

c# - 测试事件监听器

c# - NUnit CollectionConstraints 异常

nunit - NuGet 和 nUnit 自动化

java - 在 Teamcity 中运行 Gradle Wrapper 时无法通过代理建立隧道

testing - 如何测试多个国家/地区的 alexa 技能?

testing - 如何测试服务器端 debugOnly 包

javascript - 具有异步功能的有状态 React 组件未通过 Jest 测试

build - TeamCity 两个版本使用相同的结帐目录

plugins - TeamCity 加载自定义插件,但没有证据表明插件代码运行