Browse Source

Added UITest project

pull/49/merge
Javier Suárez Ruiz 8 years ago
parent
commit
c789f37aec
6 changed files with 208 additions and 0 deletions
  1. +51
    -0
      src/Mobile/eShopOnContainers.Xamarin.Tests.sln
  2. +23
    -0
      src/Mobile/eShopOnContainers/eShopOnContainers.UITests/AppInitializer.cs
  3. +42
    -0
      src/Mobile/eShopOnContainers/eShopOnContainers.UITests/Tests.cs
  4. +11
    -0
      src/Mobile/eShopOnContainers/eShopOnContainers.UITests/app.config
  5. +75
    -0
      src/Mobile/eShopOnContainers/eShopOnContainers.UITests/eShopOnContainers.UITests.csproj
  6. +6
    -0
      src/Mobile/eShopOnContainers/eShopOnContainers.UITests/packages.config

+ 51
- 0
src/Mobile/eShopOnContainers.Xamarin.Tests.sln View File

@ -25,6 +25,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "eShopOnContainers.TestRunne
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "eShopOnContainers.TestRunner.Windows", "eShopOnContainers\eShopOnContainers.TestRunner.Windows\eShopOnContainers.TestRunner.Windows.csproj", "{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "eShopOnContainers.UITests", "eShopOnContainers\eShopOnContainers.UITests\eShopOnContainers.UITests.csproj", "{E3B18084-842C-4B80-8E4A-A7E588EC3137}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Ad-Hoc|Any CPU = Ad-Hoc|Any CPU
@ -491,6 +493,54 @@ Global
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Release|x86.ActiveCfg = Release|x86
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Release|x86.Build.0 = Release|x86
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F}.Release|x86.Deploy.0 = Release|x86
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Ad-Hoc|Any CPU.ActiveCfg = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Ad-Hoc|Any CPU.Build.0 = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Ad-Hoc|ARM.ActiveCfg = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Ad-Hoc|ARM.Build.0 = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Ad-Hoc|iPhone.ActiveCfg = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Ad-Hoc|iPhone.Build.0 = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Ad-Hoc|iPhoneSimulator.ActiveCfg = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Ad-Hoc|iPhoneSimulator.Build.0 = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Ad-Hoc|x64.ActiveCfg = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Ad-Hoc|x64.Build.0 = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Ad-Hoc|x86.ActiveCfg = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Ad-Hoc|x86.Build.0 = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.AppStore|Any CPU.ActiveCfg = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.AppStore|Any CPU.Build.0 = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.AppStore|ARM.ActiveCfg = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.AppStore|ARM.Build.0 = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.AppStore|iPhone.ActiveCfg = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.AppStore|iPhone.Build.0 = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.AppStore|iPhoneSimulator.ActiveCfg = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.AppStore|iPhoneSimulator.Build.0 = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.AppStore|x64.ActiveCfg = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.AppStore|x64.Build.0 = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.AppStore|x86.ActiveCfg = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.AppStore|x86.Build.0 = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Debug|Any CPU.Build.0 = Debug|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Debug|ARM.ActiveCfg = Debug|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Debug|ARM.Build.0 = Debug|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Debug|iPhone.ActiveCfg = Debug|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Debug|iPhone.Build.0 = Debug|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Debug|x64.ActiveCfg = Debug|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Debug|x64.Build.0 = Debug|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Debug|x86.ActiveCfg = Debug|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Debug|x86.Build.0 = Debug|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Release|Any CPU.ActiveCfg = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Release|Any CPU.Build.0 = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Release|ARM.ActiveCfg = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Release|ARM.Build.0 = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Release|iPhone.ActiveCfg = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Release|iPhone.Build.0 = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Release|x64.ActiveCfg = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Release|x64.Build.0 = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Release|x86.ActiveCfg = Release|Any CPU
{E3B18084-842C-4B80-8E4A-A7E588EC3137}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@ -504,5 +554,6 @@ Global
{A289A7F0-ACD8-42AE-87B6-AB1AFD310BF1} = {71D6317D-AF0F-46FE-91DA-B0556911FC4B}
{B68C2B56-7581-46AE-B55D-D25DDFD3BFE3} = {71D6317D-AF0F-46FE-91DA-B0556911FC4B}
{02680C26-CA1D-4D9D-A7E3-D66AF5BE6F2F} = {71D6317D-AF0F-46FE-91DA-B0556911FC4B}
{E3B18084-842C-4B80-8E4A-A7E588EC3137} = {71D6317D-AF0F-46FE-91DA-B0556911FC4B}
EndGlobalSection
EndGlobal

+ 23
- 0
src/Mobile/eShopOnContainers/eShopOnContainers.UITests/AppInitializer.cs View File

@ -0,0 +1,23 @@
using Xamarin.UITest;
namespace eShopOnContainers.UITests
{
public class AppInitializer
{
public static IApp StartApp(Platform platform)
{
if (platform == Platform.Android)
{
return ConfigureApp
.Android
.ApkFile(@"..\..\..\eShopOnContainers.Droid\bin\Release\eShopOnContainers.Droid.apk")
.StartApp();
}
return ConfigureApp
.iOS
.StartApp();
}
}
}

+ 42
- 0
src/Mobile/eShopOnContainers/eShopOnContainers.UITests/Tests.cs View File

@ -0,0 +1,42 @@
using NUnit.Framework;
using Xamarin.UITest;
namespace eShopOnContainers.UITests
{
[TestFixture(Platform.Android)]
[TestFixture(Platform.iOS)]
public class Tests
{
IApp app;
Platform platform;
public Tests(Platform platform)
{
this.platform = platform;
}
[SetUp]
public void BeforeEachTest()
{
app = AppInitializer.StartApp(platform);
}
[Test]
public void AppLaunches()
{
app.Screenshot("First screen.");
}
[Test]
public void LoginTest()
{
app.Tap(x => x.Text("[ LOGIN ]"));
app.Tap(x => x.Class("WebView").Css("INPUT#Email"));
app.EnterText(x => x.Class("WebView").Css("INPUT#Email"), "jdoe@eshop.com");
app.Tap(x => x.Class("WebView").Css("INPUT#Password"));
app.EnterText(x => x.Class("WebView").Css("INPUT#Password"), "eshopContainers.123");
app.Tap(x => x.Class("WebView").Css("BUTTON.btn.btn-default.btn-brand.btn-brand-big"));
app.Screenshot("eShopOnContainers Login process");
}
}
}

+ 11
- 0
src/Mobile/eShopOnContainers/eShopOnContainers.UITests/app.config View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-9.0.0.0" newVersion="9.0.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>

+ 75
- 0
src/Mobile/eShopOnContainers/eShopOnContainers.UITests/eShopOnContainers.UITests.csproj View File

@ -0,0 +1,75 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{E3B18084-842C-4B80-8E4A-A7E588EC3137}</ProjectGuid>
<OutputType>Library</OutputType>
<RootNamespace>eShopOnContainers.UITests</RootNamespace>
<AssemblyName>eShopOnContainers.UITests</AssemblyName>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug</OutputPath>
<DefineConstants>DEBUG;</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ConsolePause>false</ConsolePause>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>full</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release</OutputPath>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ConsolePause>false</ConsolePause>
</PropertyGroup>
<ItemGroup>
<Reference Include="nunit.core, Version=2.6.4.14350, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77, processorArchitecture=MSIL">
<HintPath>..\..\packages\NUnitTestAdapter.2.0.0\lib\nunit.core.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="nunit.core.interfaces, Version=2.6.4.14350, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77, processorArchitecture=MSIL">
<HintPath>..\..\packages\NUnitTestAdapter.2.0.0\lib\nunit.core.interfaces.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="nunit.framework, Version=2.6.4.14350, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77, processorArchitecture=MSIL">
<HintPath>..\..\packages\NUnit.2.6.4\lib\nunit.framework.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="nunit.util, Version=2.6.4.14350, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77, processorArchitecture=MSIL">
<HintPath>..\..\packages\NUnitTestAdapter.2.0.0\lib\nunit.util.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="NUnit.VisualStudio.TestAdapter, Version=2.0.0.0, Culture=neutral, PublicKeyToken=4cb40d35494691ac, processorArchitecture=MSIL">
<HintPath>..\..\packages\NUnitTestAdapter.2.0.0\lib\NUnit.VisualStudio.TestAdapter.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="System" />
<Reference Include="Xamarin.UITest, Version=2.0.3.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\..\packages\Xamarin.UITest.2.0.3\lib\Xamarin.UITest.dll</HintPath>
<Private>True</Private>
</Reference>
</ItemGroup>
<ItemGroup>
<Compile Include="Tests.cs" />
<Compile Include="AppInitializer.cs" />
</ItemGroup>
<ItemGroup>
<None Include="app.config" />
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\eShopOnContainers.Core\eShopOnContainers.Core.csproj">
<Project>{65116d1c-145b-4693-abda-f0fb6f425191}</Project>
<Name>eShopOnContainers.Core</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
</Project>

+ 6
- 0
src/Mobile/eShopOnContainers/eShopOnContainers.UITests/packages.config View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="NUnit" version="2.6.4" targetFramework="net45" />
<package id="NUnitTestAdapter" version="2.0.0" targetFramework="net45" />
<package id="Xamarin.UITest" version="2.0.3" targetFramework="net45" />
</packages>

Loading…
Cancel
Save