selcukes / selcukes-java Goto Github PK
View Code? Open in Web Editor NEWA Test Automation Framework that can be used to test Web, Desktop, Mobile and Api applications
Home Page: https://selcukes.github.io/
License: Apache License 2.0
A Test Automation Framework that can be used to test Web, Desktop, Mobile and Api applications
Home Page: https://selcukes.github.io/
License: Apache License 2.0
Move full page screenshot code to a separate module
Segregation of Sheet. Suite (ex. Regression, Smoke) in different excel file, Test Data sheets in different excel file
Add flexibility to update below properties using setSystemProperty or -D option in maven
Currently Full page screenshot for RemoteWebDriver instance are capured using java script scroll, which will overlaps header for few websites, Make this options as last option.
Capture Full page screenshot using CDP command will helps even using RemoteWebDriver instance
Is your feature request related to a problem? Please describe.
Parse XML file without Jsoup dependency
Describe the solution you'd like
DocumentBuilderFactory builderFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = builderFactory.newDocumentBuilder();
Document doc=builder.parse(inputStream);
Is your feature request related to a problem? Please describe.
Nofier and Fullpage screenshot actions not working without explicityly calling ReportDriver setter and remove action
Describe the solution you'd like
Add ReportListener and ReportDriver setter actions in TestLifecycle.
import io.github.selcukes.core.driver.DriverManager;
import io.github.selcukes.core.listener.TestLifecyclePerMethod;
import io.github.selcukes.core.page.Pages;
import io.github.selcukes.core.page.WebPage;
import io.github.selcukes.reports.ReportDriver;
import io.github.selcukes.reports.listeners.TestNGReportListener;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Listeners;
import org.testng.annotations.Test;
@Listeners({TestLifecyclePerMethod.class, TestNGReportListener.class})
public class HelloWeb {
WebPage page;
@BeforeMethod
public void beforeMethod() {
page = Pages.webPage();
ReportDriver.setReportDriver(DriverManager.getDriver());
}
@Test
public void hello() {
page.open("https://www.google.com/");
page.assertThat().title("Hello");
}
@AfterMethod
public void afterMethod() {
ReportDriver.removeDriver();
}
}
Is your feature request related to a problem? Please describe.
Remove TestNG Bindings(listeners) from Core and Report modules.
Describe the solution you'd like
Create generic selcukes listeners which can be extended and implemented in JUnit and TestNG
nativeScreenshotTestForEdge(io.github.selcukes.snapshot.tests.NativeSnapshotTest): It must be an executable file: /tmp/webdriver/msedgedriver_96.0.1054.41/msedgedriver
Describe the bug
Local Appium Server is not triggred
Precondition:
windows:
serviceUrl: "http://127.0.0.1:4723"
app: "Microsoft.WindowsCalculator_8wekyb3d8bbwe!App"
mobile:
remote: true
cloud: BROWSER_STACK
platform: Android
browser: APP
serviceUrl: "http://127.0.0.1:4723"
app: "android-app.apk"
To Reproduce
WindowsDriver driver = DriverManager.createDriver(DeviceType.DESKTOP);
WinPage page = new WinPage(driver);
page.click(By.name("Nine"))
Selcukes Version
2.0.3
Is your feature request related to a problem? Please describe.
Assertj Integration
Describe the solution you'd like
Is your feature request related to a problem? Please describe.
Remove Selenium Grid dependency
Describe the solution you'd like
Find other way to start Selenium grid programatically
Is your feature request related to a problem? Please describe.
Resolve Locators for String objects
Describe the solution you'd like
Support String object locators as follows
xpath://input
css:
id:
Is your feature request related to a problem? Please describe.
Parse Excel as Map of Maps
Describe the solution you'd like
Is your feature request related to a problem? Please describe.
BrowserStack Integration
Describe the solution you'd like
Run tests in BrowserStack
Is your feature request related to a problem? Please describe.
Add Support to build Multipart Request to WebClient
When using ExcelReader2 library to read test data from multiple Excel files, calling the method MultiExcelData.getTestDataAsMap() throws a java.util.ConcurrentModificationException as shown below:
The MultiExcelData.getTestDataAsMap() method should return the test data as a Map without throwing any exception.
Steps to reproduce the behavior:
webDriver = new EventFiringDecorator(eventCapture).decorate(webDriver);
java.lang.OutOfMemoryError: Java heap space
at java.desktop/java.awt.image.DataBufferByte.(DataBufferByte.java:76)
at java.desktop/java.awt.image.Raster.createInterleavedRaster(Raster.java:266)
at java.desktop/java.awt.image.BufferedImage.(BufferedImage.java:391)
at io.github.selcukes.snapshot.DefaultPageSnapshot.defaultPageScreenshot(DefaultPageSnapshot.java:71)
at io.github.selcukes.snapshot.DefaultPageSnapshot.getDefaultPageSnapshot(DefaultPageSnapshot.java:25)
at io.github.selcukes.snapshot.PageSnapshot.getFullScreenshotAs(PageSnapshot.java:38)
I aim to enhance Selcukes by upgrading to Java 17, leveraging its features for improved performance and security. Additionally, I need to ensure compatibility with SonarQube, which mandates a minimum Java version of 17.
Upgrade Selcukes to utilize Java 17 features and ensure compatibility with SonarQube's minimum Java version requirement of 17.
Maintaining the current version without upgrading to Java 17 is considered, but I believe embracing the latest features aligns Selcukes with modern Java standards, enhancing its robustness.
The upgrade aligns Selcukes with the latest Java advancements, improving performance and security, while also ensuring compatibility with SonarQube's minimum Java version of 17.
Unable to read screen-size.js
file content from class path exception thrown
Fix FileHelper readContent method to read from jar instead of class path
Steps to reproduce the behavior:
CucumberLiveReportAdapter
plug-in to post live test stats to Elastic Search and Kibana to view Real time dashboard report for cucumberThis issue provides visibility into Renovate updates and their statuses. Learn more
These are blocked by an existing closed PR and will not be recreated unless you click a checkbox below.
java.lang.IndexOutOfBoundsException: Index: 82, Size: 82
at java.util.ArrayList.rangeCheck(ArrayList.java:657)
at java.util.ArrayList.get(ArrayList.java:433)
at io.github.selcukes.wdb.util.VersionDetector.getCompatibleBinaryVersion(VersionDetector.java:139)
at io.github.selcukes.wdb.util.VersionDetector.getVersion(VersionDetector.java:60)
at io.github.selcukes.wdb.core.ChromeBinary.browserVersion(ChromeBinary.java:77)
at io.github.selcukes.wdb.WebDriverBinary$Builder.autoDetectVersion(WebDriverBinary.java:93)
at io.github.selcukes.tests.WebDriverBinaryTest.autoDetectBrowserVersionTest(WebDriverBinaryTest.java:120)
It is required to move to Java 11 as Sonar cloud is deprecating Java 8 and scanners using them will stop functioning after October 2020.
Is your feature request related to a problem? Please describe.
Enable on demand Video Recording option for Mobile Tests. Currently Selcukes Video Recoder capturing entire windows screen.
Describe the solution you'd like
Use Appium inbuilt video recoding options for Mobile tests
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.