【发布时间】:2013-07-26 00:09:47
【问题描述】:
我正在尝试使用 Microsoft 的编码 UI 在 html 页面上自动输入值。当我使用普通方法(即通过动作记录获得的硬编码值)时,一切正常,但如果我使用 params 方法并将其传递给显式值,它根本不起作用;更糟糕的是,此时测试并没有失败,它似乎只是跳过了那一步。 我希望有人可以在我设置测试的数据驱动方面或者是否有其他我可以尝试的东西时让我知道我缺少什么(如果有的话)。谢谢 埃里克
这是来自测试本身的数据连接字符串 [DeploymentItem("PFChecks\Data\Company.xml"), DataSource("Microsoft.VisualStudio.TestTools.DataSource.XML", "|DataDirectory|\Company.xml", "Iteration", DataAccessMethod.Sequential), TestMethod]
以及尝试使用 params 方法设置字段值的代码行。 usEnterSSN.methodUserSyncEnterSNSParams.UISsnoEditText = "012831444";
此方法中只有一个对象可以使用,即 UISsnoEditText 对象。 UI Map 中的对象名称是正确的,并且与网页本身上的名称相匹配。如果我明确设置值(如上)或使用 TestContext.DataRow 方法,则 params 方法将无法工作。 欢迎任何想法,如果我可以提供任何进一步的信息来帮助回答这个问题,请告诉我。 谢谢 埃里克
【问题讨论】:
-
你能澄清一下“它根本不起作用”吗?它做什么和不做什么?例如,是否输入记录测试时输入的值?
-
如果我使用... usEnterSSN.methodUserSyncEnterSSN();然后它输入正确的信息,测试正常进行。如果我使用... usEnterSSN.methodUserSyncEnterSSNParams.UISsnoEditText = "012831444";然后没有任何东西进入该领域,但测试仍然通过。顺便提一下,此处指定的值(012831444)与使用 usEnterSSN.methodUserSyncEnterSSN(); 时输入的值相同;
标签: coded-ui-tests