我正在尝试使用Xamarin.UITest框架进行UI测试。我正在尝试使用他们网站上提供的链接来遵循该程序。该应用程序被命名为' CreditCardValidator'。我下载了应用程序然后做了升级UITest包而不是NUnit包的东西。正如教程所提到的那样,要提到的代码是
using System;
using System.IO;
using System.Linq;
using NUnit.Framework;
using Xamarin.UITest;
using Xamarin.UITest.iOS;
using Xamarin.UITest.Queries;
namespace CreditCardValidator.iOS.UITests
{
[TestFixture]
public class Tests
{
iOSApp app;
[SetUp]
public void BeforeEachTest()
{
Console.WriteLine ("Starting the function");
app = ConfigureApp.iOS.StartApp();
// app = ConfigureApp.iOS.AppBundle("/Users/admin/Library/Developer/CoreSimulator/Devices/57DBB268-714A-473F-A7D3-C3B4BB2BB138/data/Containers/Bundle/Application/A9151B5D-7B9C-4F9A-9EF2-F153AC994170").StartApp();
Console.WriteLine ("ending the function ");
}
[Test]
public void CreditCardNumber_TooShort_DisplayErrorMessage()
{
Console.WriteLine ("Starting the function");
app.WaitForElement(c=>c.Class("UINavigationBar").Marked("Simple Credit Card Validator"));
app.EnterText(c=>c.Class("UITextField"), new string('9', 15));
Console.WriteLine ("ending the function ");
}
}
}
我的问题: 模拟器没有打开,测试无故失败。 StartApp()函数文档说它在模拟器上启动了应用程序。我在测试结果板中得到的错误是
SetUp:System.NullReferenceException:未将对象引用设置为对象的实例
他们失败了: app = ConfigureApp.iOS.StartApp();
我尝试将此行替换为代码中注释掉的应用程序的编译版本。但是对于那个仍然模拟器没有打开,我得到的错误是 SetUp:System.Exception:应用包目录不包含有效的应用包。仍然是错误发生在启动功能行
更多信息:在第二次尝试中,我发现我的.app文件中有一个“停止”按钮'图像就可以了。这可能是原因吗?
请询问是否需要更多信息。