Skip to content
This repository was archived by the owner on Aug 7, 2021. It is now read-only.

tests: use mochawesome reporter #881

Merged
merged 2 commits into from
May 8, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion demo/AngularApp/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,5 @@ e2e/reports/
test-results.xml

app/item/items.component.android.css
app/item/items.component.ios.css
app/item/items.component.ios.css
mochawesome-report
2 changes: 1 addition & 1 deletion demo/AngularApp/app/activity.android.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import {setActivityCallbacks, AndroidActivityCallbacks} from "ui/frame";
import {setActivityCallbacks, AndroidActivityCallbacks} from "tns-core-modules/ui/frame";

@JavaProxy("org.myApp.MainActivity")
class Activity extends android.support.v7.app.AppCompatActivity {
Expand Down
15 changes: 12 additions & 3 deletions demo/AngularApp/e2e/setup.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,18 @@
import { startServer, stopServer } from "nativescript-dev-appium";
import { startServer, stopServer, ITestReporter, nsCapabilities, LogImageType } from "nativescript-dev-appium";
const addContext = require('mochawesome/addContext');

before("start server", async () => {
const testReporterContext = <ITestReporter>{};
testReporterContext.name = "mochawesome";
testReporterContext.reportDir = "mochawesome-report";
testReporterContext.log = addContext;
testReporterContext.logImageTypes = [LogImageType.screenshots];
nsCapabilities.testReporter = testReporterContext;

before("start server", async function () {
nsCapabilities.testReporter.context = this;
await startServer();
});

after("stop server", async () => {
after("stop server", async function () {
await stopServer();
});
13 changes: 6 additions & 7 deletions demo/AngularApp/e2e/tests.e2e-spec.ts
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import { AppiumDriver, createDriver, SearchOptions } from "nativescript-dev-appium";
import { assert } from "chai";

describe("sample scenario", () => {
describe("sample scenario", async function () {
let driver: AppiumDriver;

before(async () => {
before(async function () {
driver = await createDriver();
});

Expand All @@ -26,17 +26,16 @@ describe("sample scenario", () => {

afterEach(async function () {
if (this.currentTest.state === "failed") {
await driver.logPageSource(this.currentTest.title);
await driver.logScreenshot(this.currentTest.title);
await driver.logTestArtifacts(this.currentTest.title);
}
});

after(async () => {
after(async function () {
await driver.quit();
console.log("Quit driver!");
});

it("should navigate to a ninja", async () => {
it("should navigate to a ninja", async function () {
const btnNinjas = await driver.findElementByText("Ninjas");
await btnNinjas.click();

Expand Down Expand Up @@ -67,5 +66,5 @@ describe("sample scenario", () => {
});
}

const getItems = async () => { return driver.isAndroid ? await driver.findElementsByText("(Android)") : await driver.findElementsByText("(ios)"); }
const getItems = async function () { return driver.isAndroid ? await driver.findElementsByText("(Android)") : await driver.findElementsByText("(ios)"); }
});
8 changes: 4 additions & 4 deletions demo/AngularApp/e2e/tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,15 @@
"experimentalDecorators": true,
"emitDecoratorMetadata": true,
"importHelpers": false,
"sourceMap": true,
"types": [
"node",
"mocha",
"chai"
"chai",
"node"
],
"lib": [
"es2015",
"dom"
]
],
"baseUrl": "."
}
}
32 changes: 15 additions & 17 deletions demo/AngularApp/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,36 +13,34 @@
}
},
"dependencies": {
"@angular/common": "~7.1.0",
"@angular/compiler": "~7.1.0",
"@angular/core": "~7.1.0",
"@angular/forms": "~7.1.0",
"@angular/http": "~7.1.0",
"@angular/platform-browser": "~7.1.0",
"@angular/platform-browser-dynamic": "~7.1.0",
"@angular/router": "~7.1.0",
"@angular/common": "~7.2.0",
"@angular/compiler": "~7.2.0",
"@angular/core": "~7.2.0",
"@angular/forms": "~7.2.0",
"@angular/http": "~7.2.0",
"@angular/platform-browser": "~7.2.0",
"@angular/platform-browser-dynamic": "~7.2.0",
"@angular/router": "~7.2.0",
"nativescript-angular": "next",
"nativescript-theme-core": "~1.0.2",
"reflect-metadata": "~0.1.8",
"rxjs": "~6.3.3",
"rxjs": "^6.3.3",
"tns-core-modules": "next",
"zone.js": "~0.8.26"
"zone.js": "^0.8.4"
},
"devDependencies": {
"@angular/compiler-cli": "~7.1.0",
"@ngtools/webpack": "~7.1.2",
"@angular/compiler-cli": "~7.2.0",
"@ngtools/webpack": "~7.2.0",
"@types/chai": "~4.1.7",
"@types/mocha": "~5.2.5",
"@types/node": "~10.12.12",
"@types/node": "~10.12.18",
"babel-traverse": "6.26.0",
"babel-types": "6.26.0",
"babylon": "6.18.0",
"chai": "~4.1.1",
"chai-as-promised": "~7.1.1",
"lazy": "1.0.11",
"mocha": "~5.2.0",
"mocha-junit-reporter": "~1.18.0",
"mocha-multi": "~1.0.1",
"mochawesome": "~3.1.2",
"nativescript-dev-appium": "next",
"nativescript-dev-sass": "next",
"nativescript-dev-typescript": "next",
Expand All @@ -54,4 +52,4 @@
"e2e": "tsc -p e2e && mocha --opts ../config/mocha.opts --recursive e2e --appiumCapsLocation ../config/appium.capabilities.json",
"compile-tests": "tsc -p e2e --watch"
}
}
}
3 changes: 2 additions & 1 deletion demo/JavaScriptApp/.gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
app/main-page.android.css
app/main-page.ios.css
app/main-page.ios.css
mochawesome-report
74 changes: 45 additions & 29 deletions demo/JavaScriptApp/e2e/config/appium.capabilities.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,8 @@
"deviceName": "Emulator-Api19-Default",
"avd": "Emulator-Api19-Default",
"lt": 60000,
"appActivity": "com.tns.NativeScriptActivity",
"newCommandTimeout": 720,
"noReset": true,
"noReset": false,
"fullReset": false,
"app": ""
},
Expand All @@ -17,9 +16,8 @@
"deviceName": "Emulator-Api21-Default",
"avd": "Emulator-Api21-Default",
"lt": 60000,
"appActivity": "com.tns.NativeScriptActivity",
"newCommandTimeout": 720,
"noReset": true,
"noReset": false,
"fullReset": false,
"app": ""
},
Expand All @@ -29,9 +27,8 @@
"deviceName": "Emulator-Api23-Default",
"avd": "Emulator-Api23-Default",
"lt": 60000,
"appActivity": "com.tns.NativeScriptActivity",
"newCommandTimeout": 720,
"noReset": true,
"noReset": false,
"fullReset": false,
"app": ""
},
Expand All @@ -41,9 +38,8 @@
"deviceName": "Emulator-Api24-Default",
"avd": "Emulator-Api24-Default",
"lt": 60000,
"appActivity": "com.tns.NativeScriptActivity",
"newCommandTimeout": 720,
"noReset": true,
"noReset": false,
"fullReset": false,
"app": ""
},
Expand All @@ -53,9 +49,8 @@
"deviceName": "Emulator-Api25-Google",
"avd": "Emulator-Api25-Google",
"lt": 60000,
"appActivity": "com.tns.NativeScriptActivity",
"newCommandTimeout": 720,
"noReset": true,
"noReset": false,
"fullReset": false,
"app": ""
},
Expand All @@ -65,42 +60,63 @@
"deviceName": "Emulator-Api26-Google",
"avd": "Emulator-Api26-Google",
"lt": 60000,
"appActivity": "com.tns.NativeScriptActivity",
"newCommandTimeout": 720,
"noReset": true,
"noReset": false,
"fullReset": false,
"app": ""
},
"sim.iPhone7.iOS100": {
"platformName": "iOS",
"platformVersion": "10.0",
"deviceName": "iPhone 7 100",
"noReset": true,
"android27": {
"platformName": "Android",
"platformVersion": "27",
"deviceName": "Emulator-Api27-Google",
"avd": "Emulator-Api27-Google",
"lt": 60000,
"newCommandTimeout": 720,
"noReset": false,
"fullReset": false,
"app": ""
},
"android28": {
"platformName": "Android",
"platformVersion": "28",
"deviceName": "Emulator-Api28-Google",
"avd": "Emulator-Api28-Google",
"lt": 60000,
"newCommandTimeout": 720,
"noReset": false,
"fullReset": false,
"app": ""
},
"sim.iPhone8.iOS110": {
"sim.iPhone7": {
"platformName": "iOS",
"platformVersion": "11.2",
"deviceName": "iPhone 8 110",
"noReset": true,
"platformVersion": "/12.*/",
"deviceName": "iPhone 7",
"noReset": false,
"fullReset": false,
"app": ""
},
"sim.iPhoneX.iOS110": {
"sim.iPhone8": {
"platformName": "iOS",
"platformVersion": "11.2",
"deviceName": "iPhone X",
"noReset": true,
"platformVersion": "/12*/",
"deviceName": "iPhone 8",
"noReset": false,
"fullReset": false,
"app": ""
},
"sim.iPhoneX.iOS111": {
"sim.iPhoneX": {
"platformName": "iOS",
"platformVersion": "11.1",
"platformVersion": "/12*/",
"deviceName": "iPhone X",
"noReset": true,
"noReset": false,
"fullReset": false,
"app": ""
},
"sim.iPhoneXS": {
"platformName": "ios",
"platformVersion": "/12*/",
"deviceName": "iPhone XS",
"noReset": false,
"fullReset": false,
"app": ""
}
}
}
37 changes: 19 additions & 18 deletions demo/JavaScriptApp/e2e/setup.js
Original file line number Diff line number Diff line change
@@ -1,18 +1,19 @@
"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
const nativescript_dev_appium_1 = require("nativescript-dev-appium");
before("start server", () => __awaiter(this, void 0, void 0, function* () {
yield nativescript_dev_appium_1.startServer();
}));
after("stop server", () => __awaiter(this, void 0, void 0, function* () {
yield nativescript_dev_appium_1.stopServer();
}));
//# sourceMappingURL=setup.js.map
const nsAppium = require("nativescript-dev-appium");
const addContext = require('mochawesome/addContext');

const testReporterContext = {};
testReporterContext.name = "mochawesome";
testReporterContext.reportDir = "mochawesome-report";
testReporterContext.log = addContext;
testReporterContext.logImageTypes = [nsAppium.LogImageType.screenshots];
nsAppium.nsCapabilities.testReporter = testReporterContext;

before("start server", async function () {
nsAppium.nsCapabilities.testReporter.context = this;
await nsAppium.startServer();
});

after("stop appium server", async function () {
nsAppium.nsCapabilities.testReporter.context = this;
await nsAppium.stopServer();
});
Loading