在Coded Ui测试中,我想使用以下代码验证应用程序中的消息:
public void AssinarNewsletter()
{
//BrowserWindow.CurrentBrowser = "chrome";
BrowserWindow chrome = BrowserWindow.Launch("http://pp.psafe.com/");
chrome.Maximized = true;
UITestControl uIEmail = new UITestControl(chrome);
uIEmail.TechnologyName = "Web";
uIEmail.SearchProperties.Add("ControlType", "Edit");
uIEmail.SearchProperties.Add("Id", "mce-EMAIL");
Keyboard.SendKeys(uIEmail, "andre.mendes@peseife.com.br");
UITestControl uICadastrar = new UITestControl(chrome);
uICadastrar.TechnologyName = "Web";
uICadastrar.SearchProperties.Add("ControlType", "Button");
uICadastrar.SearchProperties.Add("Id", "mc-embedded-subscribe");
Mouse.Click(uICadastrar);
UITestControl uICadastrado = new UITestControl(chrome);
uICadastrado.TechnologyName = "Web";
uICadastrado.SearchProperties.Add("ControlType", "Pane");
uICadastrado.SearchProperties.Add("Id", "mce-success-response");
string displayed = (string)uICadastrado.GetProperty("InnerText");
string expected = "Quase no final... Precisaamos confirmar o seu endereço de e-mail. Para concluir o processo de assinatura, clique no link existente no e-mail que acabamos de enviar para você.";
if (displayed != expected)
{
Assert.Fail("A mensagem está incorreta");
}
但是不知何故,我的测试通过时不应该。
以下是应用程序中的消息:
答案 0 :(得分:2)
添加延迟,例如
UITestControl uICadastrado = new UITestControl(chrome);
uICadastrado.WaitForControlReady(1000);//wait one second
放入断点然后通过打开测试资源管理器在调试中运行测试,右键单击测试用例并单击“在调试中运行”。
更改
if( displayed != expected )
要
if ( String.Equals(displayed , expected ) == false )
或者
if ( ! String.Equals(displayed , expected ) )