- Katılım
- 23 Mart 2021
- Mesajlar
- 2.933
- Çözümler
- 28
Daha fazla
- Cinsiyet
- Erkek
Selam,
Bir Bootcamp'i yeni bitirdim. Qa'lik eğitimi aldık, normalde bizim müfredatta yoktu ama öğrencilerden talep gelince önceki Batch'e verilen Appium derslerinin video kayıtlarını açtılar. Canlı ders olmadığı için hata aldığım zaman kendim araştırmaya koyuluyorum. Ki bu yazılımla uğraşan birisinde var olması gereken bir özellik zaten.
Neyse asıl konuya gelelim. Appium'da mobil test otomasyonu yapmak istiyorum. Feature dosyası, stepDefinition classı, page classları vs. her şey hazır ama testi çalıştırdığımda Hooks classı hata veriyor. Hatanın ekran görüntüsü:
Hooks classındaki hatayı gösterdiği satırı işaretledim:
buildDefaultService() methodunu bir türlü çalıştıramıyor. pom.xml dosyasının içeriği de bu:
Bilgisayarımdaki JDK sürümü 11 ancak söz konusu proje 1.8 sürümünde açıldı.
Kaç gündür internetin altını üstüne getirdim ama çözüm bulamadım. TestNG'de bir sorun yok bu arada, orada her şey sorunsuz çalışıyor. Ama Cucumber'da şu hatayı bir türlü aşamadım. Yardımcı olabilir misiniz?
Aylar aylar sonra gelen ekleme:
Bu konuyu açtıktan birkaç gün sonra problemi çözdüm de burada paylaşmak bugüne kısmetmiş. Çözümü stackoverflow'da bulmuştum ama şu an çözümü bulduğum konuyu bulamadım dolayısıyla link veremiyorum. İleride aynı hata ile karşılaşan olursa diye çözümü de paylaşayım.
Öncelikle Node.js kurdum. Zaten framework'ü kurarken en baştan Node.js de kurmam gerekiyordu ama onu atlamışım. Sonrasında da pom.xml dosyasına şu dependency'i ekledim:
Bunu ekledikten sonra Hooks class ile Appium Server başladı ve problem çözülmüş oldu.
Bir Bootcamp'i yeni bitirdim. Qa'lik eğitimi aldık, normalde bizim müfredatta yoktu ama öğrencilerden talep gelince önceki Batch'e verilen Appium derslerinin video kayıtlarını açtılar. Canlı ders olmadığı için hata aldığım zaman kendim araştırmaya koyuluyorum. Ki bu yazılımla uğraşan birisinde var olması gereken bir özellik zaten.
Neyse asıl konuya gelelim. Appium'da mobil test otomasyonu yapmak istiyorum. Feature dosyası, stepDefinition classı, page classları vs. her şey hazır ama testi çalıştırdığımda Hooks classı hata veriyor. Hatanın ekran görüntüsü:
Hooks classındaki hatayı gösterdiği satırı işaretledim:
buildDefaultService() methodunu bir türlü çalıştıramıyor. pom.xml dosyasının içeriği de bu:
Kod:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.example</groupId>
<artifactId>mobileTestingCucumber</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<jvm.options>--add-opens java.base/java.lang=ALL-UNNAMED</jvm.options>
</properties>
<dependencies>
<!-- https://mvnrepository.com/artifact/io.cucumber/cucumber-java -->
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-java</artifactId>
<version>6.9.1</version>
</dependency>
<!-- https://mvnrepository.com/artifact/io.cucumber/cucumber-junit -->
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-junit</artifactId>
<version>6.9.0</version>
<scope>test</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java -->
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>3.141.59</version>
</dependency>
<!-- https://mvnrepository.com/artifact/io.appium/java-client -->
<dependency>
<groupId>io.appium</groupId>
<artifactId>java-client</artifactId>
<version>7.3.0</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>3.0.0-M1</version>
<configuration>
<testFailureIgnore>true</testFailureIgnore>
<skipTests>false</skipTests>
<includes>
<include>**/runners/*TestRunner*.java</include>
</includes>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>3.0.0-M1</version>
<configuration>
<parallel>classes</parallel>
<forkMode>perthread</forkMode>
<threadCount>4</threadCount>
<reuseForks>false</reuseForks>
<argLine>-Duser.language=en</argLine>
<argLine>-Xmx1024m</argLine>
<argLine>-XX:MaxPermSize=256m</argLine>
<argLine>-Dfile.encoding=UTF-8</argLine>
<useFile>false</useFile>
<includes>
<include>**/runners/*Runner*.java</include>
</includes>
<testFailureIgnore>true</testFailureIgnore>
</configuration>
</plugin>
<plugin>
<groupId>net.masterthought</groupId>
<artifactId>maven-cucumber-reporting</artifactId>
<version>5.0.0</version>
<executions>
<execution>
<id>execution</id>
<phase>verify</phase>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<projectName>cucumber-jvm-example</projectName>
<outputDirectory>${project.build.directory}</outputDirectory>
<inputDirectory>${project.build.directory}</inputDirectory>
<jsonFiles>
<param>**/json-reports/*.json</param>
</jsonFiles><classificationFiles>->
<param>sample.properties</param>
<param>other.properties</param>
</classificationFiles>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
Bilgisayarımdaki JDK sürümü 11 ancak söz konusu proje 1.8 sürümünde açıldı.
Kaç gündür internetin altını üstüne getirdim ama çözüm bulamadım. TestNG'de bir sorun yok bu arada, orada her şey sorunsuz çalışıyor. Ama Cucumber'da şu hatayı bir türlü aşamadım. Yardımcı olabilir misiniz?
Aylar aylar sonra gelen ekleme:
Bu konuyu açtıktan birkaç gün sonra problemi çözdüm de burada paylaşmak bugüne kısmetmiş. Çözümü stackoverflow'da bulmuştum ama şu an çözümü bulduğum konuyu bulamadım dolayısıyla link veremiyorum. İleride aynı hata ile karşılaşan olursa diye çözümü de paylaşayım.
Öncelikle Node.js kurdum. Zaten framework'ü kurarken en baştan Node.js de kurmam gerekiyordu ama onu atlamışım. Sonrasında da pom.xml dosyasına şu dependency'i ekledim:
XML:
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
</dependency>
Bunu ekledikten sonra Hooks class ile Appium Server başladı ve problem çözülmüş oldu.
Son düzenleme: