我的团队为Xamarin应用程序提供了一系列传统的非ui测试。我们想在XTC中运行这些测试,但是没有找到关于在XTC中运行传统测试的文档。
我最好的猜测是将我们的Xamarin Unit Test应用程序加载到云中,然后使用UI控件在此应用程序中运行并检查我们的单元测试。我缺少一种更直接的方式吗?
再次,为了清楚起见,我们不希望直接对我们的应用进行UI测试。我们使用IOC从头开始构建,以便在没有完全集成测试的情况下获得大约95%的测试覆盖率。
例如,这是我们的一个测试:
[Test]
public void ExecuteThreadSafeActionThrowsNoException()
{
var test = new List<int> { 1, 2, 3 };
Assert.DoesNotThrow(() =>
{
_concurrent.ExecuteThreadSafe(() =>
{
test.Add(4);
foreach (var i in test)
{
Task.Delay(DelayTime).Wait();
}
test.Add(5);
});
});
}
其中_concurrent是一个具有不同实现的接口,具体取决于Platform(iOS和Android)和OS版本。所有这些测试都是我们的线程代码在多个设备上按预期工作。