是否可以将 Xamarin Calabash 与 Ruby 以外的编程语言(例如 C#)一起使用?
我想自动化移动设备的测试。
Xamarin.UITest
是基于 C# 的Calabash
Xamarin.UITest,一个基于 Calabash 的自动化 UI 验收测试框架,允许程序员使用 C# 和 NUnit 编写和执行测试,以验证 iOS 和 Android 应用程序的功能。
如果您希望 Ghekin 作为一种语言来描述您的测试,您可以在Xamarin.UITest
.
http://specflow.org/getting-started/
你可以在这里看到一个例子:https ://github.com/smstuebe/xamarin-testing-demo/tree/master/Todo.Tests.UI.Specflow
测试将如下所示。
Feature: Todo
In order to remember what I have to do
As a user
I want to maintain tasks in a list
Scenario: Add a task
When I enter "Added Task"
And I press add
Then the task "Added Task" should be added to the list
然后步骤定义使用 Xamarin.UITest
[Binding]
public sealed class TodoPageSteps
{
private TodoPage _page;
private IApp _app;
public TodoPageSteps()
{
_page = new TodoPage();
_app = FeatureContext.Current.Get<IApp>("App");
}
[When(@"I enter ""(.*)""")]
public void WhenIEnter(string task)
{
_app.Tap(_page.AddEntry);
_app.EnterText(_page.AddEntry, task);
}
[When(@"I press add")]
public void WhenIPressAdd()
{
_app.Tap(_page.AddButton);
}
[Then(@"the task ""(.*)"" should be added to the list")]
public void ThenTheTaskShouldBeAddedToTheList(string task)
{
_app.WaitForElement(_page.LabelOfTask(task));
}
}