Skip to content

Commit 12eec48

Browse files
authored
chore(Internal): 🔖 new release (#450)
2 parents b4cbb73 + 2b60891 commit 12eec48

File tree

142 files changed

+6218
-2751
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

142 files changed

+6218
-2751
lines changed

.github/workflows/pre-release.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,10 @@ env:
2323
jobs:
2424
prepare-pre-release:
2525
runs-on: ubuntu-latest
26-
if: github.event.pull_request.merged == true
2726

2827
outputs:
2928
new-version: ${{ steps.version.outputs.version }}
29+
old-version: ${{ steps.old_version.outputs.previous_version }}
3030

3131
steps:
3232
- name: Check out Git repository
@@ -193,7 +193,7 @@ jobs:
193193
CHANGELOG.md
194194
website/package.json
195195
message: |
196-
chore(Internal): :bookmark: released latest version to maven central
196+
chore(Internal): :bookmark: released v${{ needs.prepare-pre-release.outputs.old-version }} to maven central
197197
push: true
198198
default_author: user_info
199199
commit: --no-verify

.github/workflows/release.yml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ env:
2323
jobs:
2424
prepare-release:
2525
runs-on: ubuntu-latest
26-
if: github.event.pull_request.merged == true
2726

2827
outputs:
2928
new-version: ${{ steps.version.outputs.version }}
@@ -159,6 +158,9 @@ jobs:
159158
name: version-files
160159
path: |
161160
${{ github.workspace }}/core-java/pom.xml
161+
${{ github.workspace }}/CHANGELOG.md
162+
${{ github.workspace }}/lerna.json
163+
${{ github.workspace }}/website/package.json
162164
163165
push-pom:
164166
runs-on: ubuntu-latest
@@ -208,7 +210,7 @@ jobs:
208210
package.json
209211
website/docs/framework-docs/getting-started/usage.md
210212
message: |
211-
chore(Internal): :bookmark: released latest version to maven central
213+
chore(Internal): :bookmark: released v${{ needs.prepare-release.outputs.old-version }} to maven central
212214
push: true
213215
default_author: user_info
214216
commit: --no-verify

.github/workflows/test-core.yml

Lines changed: 12 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -28,16 +28,12 @@ jobs:
2828
uses: actions/setup-java@v3
2929
with:
3030
java-version: '11'
31-
distribution: 'adopt'
31+
distribution: 'temurin'
32+
cache: 'maven'
33+
check-latest: true
3234

3335
- name: Build the project
34-
run: mvn install -f core-java/pom.xml -DskipTests
35-
36-
- name: Upload target folder
37-
uses: actions/upload-artifact@v3
38-
with:
39-
name: target
40-
path: ${{ github.workspace }}/core-java/target
36+
run: mvn clean install -f core-java/pom.xml -DskipTests
4137

4238
- name: Cache local Maven repository
4339
uses: actions/cache@v3
@@ -64,19 +60,9 @@ jobs:
6460
uses: actions/setup-java@v3
6561
with:
6662
java-version: '11'
67-
distribution: 'adopt'
68-
69-
- name: Restore local Maven repository
70-
uses: actions/cache@v3
71-
with:
72-
path: ~/.m2/repository
73-
key: ${{ runner.os }}-maven-${{ github.sha }}
74-
75-
- name: Download target folder
76-
uses: actions/download-artifact@v3
77-
with:
78-
name: target
79-
path: ${{ github.workspace }}/core-java
63+
distribution: 'temurin'
64+
cache: 'maven'
65+
check-latest: true
8066

8167
- name: Install Appium 2.0
8268
run: |
@@ -85,7 +71,7 @@ jobs:
8571
appium driver install xcuitest
8672
8773
- name: Start Selenium Grid
88-
run: java -jar core-java/libs/selenium-server-4.8.0.jar standalone > core-java/selenium-grid.log &
74+
run: java -jar core-java/libs/selenium-server-4.9.0.jar standalone > core-java/selenium-grid.log &
8975

9076
- name: Launch iOS Simulator
9177
uses: futureware-tech/simulator-action@v2
@@ -106,7 +92,7 @@ jobs:
10692
force-avd-creation: false
10793
emulator-options: -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
10894
disable-animations: false
109-
script: mvn org.jacoco:jacoco-maven-plugin:prepare-agent install -f core-java/pom.xml -Pcoverage-per-test
95+
script: mvn clean org.jacoco:jacoco-maven-plugin:prepare-agent install -f core-java/pom.xml -Pcoverage-per-test
11096

11197
- name: Test Report
11298
if: failure()
@@ -144,13 +130,9 @@ jobs:
144130
uses: actions/setup-java@v3
145131
with:
146132
java-version: '11'
147-
distribution: 'adopt'
148-
149-
- name: Restore local Maven repository
150-
uses: actions/cache@v3
151-
with:
152-
path: ~/.m2/repository
153-
key: ${{ runner.os }}-maven-${{ github.sha }}
133+
distribution: 'temurin'
134+
cache: 'maven'
135+
check-latest: true
154136

155137
- name: Download reports folder
156138
uses: actions/download-artifact@v3

.github/workflows/test-release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ jobs:
4545
echo "version=$MVN_VERSION" >> $GITHUB_OUTPUT
4646
4747
- name: Start Selenium Grid
48-
run: java -jar core-java/libs/selenium-server-4.8.0.jar standalone > sample-tests/selenium-grid.log &
48+
run: java -jar core-java/libs/selenium-server-4.9.0.jar standalone > sample-tests/selenium-grid.log &
4949

5050
- name: All Test execution
5151
run: mvn clean test -f sample-tests/pom.xml -Dboyka.version=${{ steps.version.outputs.version }}

CHANGELOG.md

Lines changed: 6 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,16 @@
11

2-
## v0.14.0 (2023-03-19)
2+
## v0.14.1-rc.0 (2023-05-02)
33

44
#### :rocket: New Feature
5-
* [#411](https://github.com/BoykaFramework/boyka-framework/pull/411) feat(java): :sparkles: added hybrid app support ([@WasiqB](https://github.com/WasiqB))
6-
* [#408](https://github.com/BoykaFramework/boyka-framework/pull/408) feat(java): :sparkles: added switch to frame using ID ([@WasiqB](https://github.com/WasiqB))
7-
* [#410](https://github.com/BoykaFramework/boyka-framework/pull/410) feat(java): :sparkles: added form data body support ([@WasiqB](https://github.com/WasiqB))
5+
* [#445](https://github.com/BoykaFramework/boyka-framework/pull/445) feat(java): :sparkles: added listeners to allow outside control in the framework ([@WasiqB](https://github.com/WasiqB))
6+
* [#421](https://github.com/BoykaFramework/boyka-framework/pull/421) feat(java): ✨ added support for multi user session ([@WasiqB](https://github.com/WasiqB))
87

98
#### :bug: Bug Fix
10-
* [#406](https://github.com/BoykaFramework/boyka-framework/pull/406) fix(java): :bug: fixed issues in web automation ([@WasiqB](https://github.com/WasiqB))
11-
* [#386](https://github.com/BoykaFramework/boyka-framework/pull/386) fix(java): :bug: fixed error encountered in API ([@WasiqB](https://github.com/WasiqB))
12-
* [#381](https://github.com/BoykaFramework/boyka-framework/pull/381) fix(Internal): :bug: fixed miscellaneous issues in last release ([@WasiqB](https://github.com/WasiqB))
13-
14-
#### :memo: Documentation
15-
* [#407](https://github.com/BoykaFramework/boyka-framework/pull/407) docs(Internal): :memo: updated missing docs ([@WasiqB](https://github.com/WasiqB))
9+
* [#461](https://github.com/BoykaFramework/boyka-framework/pull/461) fix(Internal): :bug: fixed release workflow to enable manual trigger ([@WasiqB](https://github.com/WasiqB))
1610

1711
#### :house: Internal
18-
* [#398](https://github.com/BoykaFramework/boyka-framework/pull/398) build(deps): bump maven-compiler-plugin from 3.10.1 to 3.11.0 in /sample-tests ([@dependabot[bot]](https://github.com/apps/dependabot))
19-
* [#399](https://github.com/BoykaFramework/boyka-framework/pull/399) build(deps): bump lombok from 1.18.24 to 1.18.26 in /sample-tests ([@dependabot[bot]](https://github.com/apps/dependabot))
20-
* [#401](https://github.com/BoykaFramework/boyka-framework/pull/401) build(deps): bump maven-surefire-plugin from 3.0.0-M8 to 3.0.0-M9 in /sample-tests ([@dependabot[bot]](https://github.com/apps/dependabot))
12+
* [#415](https://github.com/BoykaFramework/boyka-framework/pull/415) build(deps): bump checkstyle from 10.8.0 to 10.9.2 in /core-java ([@dependabot[bot]](https://github.com/apps/dependabot))
13+
* [#414](https://github.com/BoykaFramework/boyka-framework/pull/414) build(deps): bump maven-surefire-plugin from 3.0.0-M9 to 3.0.0 in /sample-tests ([@dependabot[bot]](https://github.com/apps/dependabot))
2114

2215
#### Committers: 1
2316
- Wasiq Bhamla ([@WasiqB](https://github.com/WasiqB))

README.md

Lines changed: 21 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,8 @@
2828
<a href="https://mvnrepository.com/artifact/com.github.wasiqb.boyka/boyka-framework">
2929
<img src="https://img.shields.io/maven-central/v/com.github.wasiqb.boyka/boyka-framework.svg?style=for-the-badge" alt="Maven Central" />
3030
</a>
31-
<a href="https://github.com/BoykaFramework/boyka-framework/releases/tag/v0.13.0">
32-
<img src="https://img.shields.io/github/downloads/BoykaFramework/boyka-framework/v0.13.0/total?color=brightgreen&label=Downloads%20for%20v0.13.0&logo=GitHub&style=for-the-badge" alt="GitHub releases" />
31+
<a href="https://github.com/BoykaFramework/boyka-framework/releases/tag/v0.14.0">
32+
<img src="https://img.shields.io/github/downloads/BoykaFramework/boyka-framework/v0.14.0/total?color=brightgreen&label=Downloads%20for%20v0.14.0&logo=GitHub&style=for-the-badge" alt="GitHub releases" />
3333
</a>
3434
<a href="https://github.com/BoykaFramework/boyka-framework/blob/master/LICENSE">
3535
<img src="https://img.shields.io/github/license/BoykaFramework/boyka-framework.svg?style=for-the-badge" alt="license" />
@@ -64,10 +64,12 @@ This all gave me an idea of having a single framework which could solve all the
6464
- ✅ Supports Web browser automation with support for Chrome, Edge, Firefox and Safari.
6565
- ✅ Supports Android native apps automation
6666
- ✅ Supports iOS native apps automation
67+
- ✅ Allow Multi-user Multi-platform session interactions
6768
- ✅ Supports execution of Web tests on cloud platforms like BrowserStack and LambdaTest.
6869
- ✅ Highly configurable via `boyka-config.json`
6970
- ✅ Micro logging to log events of the test execution
7071
- ✅ Supports taking screenshots
72+
- ✅ Highly extensible via listeners
7173

7274
## ⏱️ Coming soon
7375

@@ -86,7 +88,7 @@ Use this space to tell a little more about your project and how it can be used.
8688
<dependency>
8789
<groupId>com.github.wasiqb.boyka</groupId>
8890
<artifactId>boyka-framework</artifactId>
89-
<version>0.13.0</version>
91+
<version>0.14.0</version>
9092
</dependency>
9193
```
9294

@@ -99,6 +101,7 @@ This is the configuration file for Boyka Framework named `boyka-config.json` sto
99101

100102
```json
101103
{
104+
"listeners_package": "com.github.wasiqb.boyka.testng.listeners",
102105
"ui": {
103106
"timeout": {
104107
"implicit_wait": 10,
@@ -419,16 +422,21 @@ Here's how you can execute the API test and also verify its response.
419422

420423
```java
421424
import static com.github.wasiqb.boyka.actions.api.ApiActions.withRequest;
425+
import static com.github.wasiqb.boyka.enums.PlatformType.API;
426+
import static com.github.wasiqb.boyka.manager.ParallelSession.createSession;
427+
import static com.github.wasiqb.boyka.manager.ParallelSession.clearSession;
422428
. . .
423429
// Create request body object
424430
final User user = User.createUser ()
425431
.name ("Wasiq")
426432
.job ("Software Engineer")
427433
.create ();
428434

435+
// Create API session.
436+
createSession (API, "test_postman");
437+
429438
// Compose request
430439
final ApiRequest request = ApiRequest.createRequest ()
431-
.configKey (API_CONFIG_KEY)
432440
.method (POST)
433441
.path ("/users")
434442
.bodyObject (user)
@@ -453,6 +461,9 @@ response.verifyTextField ("job")
453461
.isEqualTo (user.getJob ());
454462
response.verifyTextField ("createdAt")
455463
.isNotNull ();
464+
465+
// Clear API session.
466+
clearSession ();
456467
```
457468

458469
</details>
@@ -516,7 +527,7 @@ import static com.github.wasiqb.boyka.actions.elements.ElementActions.onElement;
516527
import static com.github.wasiqb.boyka.actions.elements.FingerActions.withFinger;
517528
import static com.github.wasiqb.boyka.actions.elements.TextBoxActions.onTextBox;
518529
import static com.github.wasiqb.boyka.enums.PlatformType.WEB;
519-
import static com.github.wasiqb.boyka.sessions.ParallelSession.getSession;
530+
import static com.github.wasiqb.boyka.manager.ParallelSession.getSession;
520531
import static com.github.wasiqb.boyka.testng.ui.saucedemo.pages.LoginPage.loginPage;
521532
import static java.text.MessageFormat.format;
522533

@@ -569,9 +580,9 @@ package com.github.wasiqb.boyka.testng.ui.saucedemo;
569580

570581
import static com.github.wasiqb.boyka.actions.drivers.DriverActions.withDriver;
571582
import static com.github.wasiqb.boyka.actions.drivers.WindowActions.onWindow;
572-
import static com.github.wasiqb.boyka.manager.DriverManager.closeDriver;
573-
import static com.github.wasiqb.boyka.manager.DriverManager.createDriver;
574-
import static com.github.wasiqb.boyka.sessions.ParallelSession.getSession;
583+
import static com.github.wasiqb.boyka.manager.ParallelSession.clearSession;
584+
import static com.github.wasiqb.boyka.manager.ParallelSession.createSession;
585+
import static com.github.wasiqb.boyka.manager.ParallelSession.getSession;
575586
import static com.google.common.truth.Truth.assertThat;
576587

577588
import com.github.wasiqb.boyka.enums.PlatformType;
@@ -593,14 +604,14 @@ public class SauceDemoTest {
593604
@BeforeClass (description = "Setup test class", alwaysRun = true)
594605
@Parameters ({ "platformType", "driverKey" })
595606
public void setupTestClass (final PlatformType platformType, final String driverKey) {
596-
createDriver (platformType, driverKey);
607+
createSession ("Unique User Persona", platformType, driverKey);
597608
this.sauceDemo = new SauceDemoActions ();
598609
}
599610

600611
@AfterClass (description = "Tear down test class", alwaysRun = true)
601612
public void tearDownTestClass () {
602613
withDriver ().saveLogs ();
603-
closeDriver ();
614+
clearSession ();
604615
}
605616

606617
@Test (description = "Test login functionality")
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
<component name="InspectionProjectProfileManager">
2+
<profile version="1.0">
3+
<option name="myName" value="Boyka Inspections" />
4+
<inspection_tool class="LocalCanBeFinal" enabled="true" level="WARNING" enabled_by_default="true">
5+
<option name="REPORT_VARIABLES" value="true" />
6+
<option name="REPORT_PARAMETERS" value="true" />
7+
</inspection_tool>
8+
<inspection_tool class="NonFinalUtilityClass" enabled="true" level="WARNING" enabled_by_default="true" />
9+
<inspection_tool class="UnqualifiedFieldAccess" enabled="true" level="WARNING" enabled_by_default="true" />
10+
</profile>
11+
</component>

0 commit comments

Comments
 (0)