0

インポートクラスChromeDriverでアクションが機能しません。私の環境はクロムドライバ2.29 +セレンのwebdriver 3.4.0 +クロム58.0.3029.96 + Eclipse Neon.3リリース(4.6.3)です。私はコードCtrl + Shift + O(Eclipseで自動インポート)を押します - それは起こりません。 Eclipseのコードに文字列import org.openqa.selenium.interactions.Actions;を挿入すると、エラーとしてマークされます。 また、私はこのクラスをgeckodriver 0.16.1 +セレンのwebdriver 3.4.0 + Firefox 53.0.2 + Eclipse Neon.3 Release(4.6.3)で実行しようとしました。インポートクラスChromeDriverでアクションが機能しません

enter image description here

私のMavenのpom.xml:

<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>com.andrey</groupId> 
    <artifactId>Geckodriver</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    <name>Geckodriver testing</name> 
    <description>Testing project for Udemy</description> 

<properties> 
    <selenium.version>3.4.0</selenium.version> 
    <testng.version>6.9.9</testng.version> 
</properties> 

<dependencies> 
    <dependency> 
     <groupId>org.seleniumhq.selenium</groupId> 
     <artifactId>selenium-java</artifactId> 
     <version>${selenium.version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.testng</groupId> 
     <artifactId>testng</artifactId> 
     <version>${testng.version}</version> 
     <scope>test</scope> 
    </dependency> 
</dependencies> 

+0

プロジェクトにセレンライブラリをどのくらい追加していますか?それが瓶(または瓶)の場合は、どこからそれを得たかを伝えます。 'org.openqa.selenium.interactions.Actions'クラスは' selenium-api'依存の一部ですが、あなたのプロジェクトでは 'org.openqa.selenium.WebDriver'インターフェースについても同じことが言えます。 –

+0

@M。 Czerwinski、私は明示的にライブラリを追加していません。私はmavenプロジェクトを作成し、pel.xmlファイルにselenium.version 3.4.0とマークしました。その後、プロジェクト内のすべての必要なライブラリを自動的にインポートします。 – PrinceOFF

+0

[selenium-java](https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java/3.4.0)は、どのMaven依存関係を正確に使用しているかを指定できますか?また、eclipseであなたのセレンの依存関係のクラスをチェックすることはできますか?これは[this](http://imgur.com/a/DpONo)のように見えるはずです。異なる場合は、スクリーンショットを投稿してください。 –

答えて

0

あなたのクラスActionsに名前を付けた後、資格なしorg.openqa.selenium.interactions.Actionsクラスのオブジェクトを作成することはできません。

あなたは、このようなオブジェクトを作成するための正しい方法がある必要がある場合は、次へ

public class Actions { 
    // code here 
} 

エルス
org.openqa.selenium.interactions.Actions builder = new org.openqa.selenium.interactions.Actions(driver); 

だけからあなた.javaファイルまたはclass

の名前を変更

public class MyCustomActions { 
    // code here 
} 
+0

ありがとう、この記法は仕事ですが、私は思いますそれは半分の解決です。なぜ 'webdriver 3.4.0'にクラス' Actions'が含まれていないのですか?あなたはそれについてどう思いますか?最近私は 'webdriver 2.53.1'に慣れていて、クラス' Actions'はwebdriverに存在していました。 – PrinceOFF

+0

このクラスをwebdriver 3.4に追加できますか?0人工的に私のプロジェクトの短い表記で使用 'アクションビルダー=新しいアクション(ドライバ);'? – PrinceOFF

+0

できません。 'class'の名前を変更するか、' org.openqa.selenium.interactions.Actions builder = new org.openqa.selenium.interactions.Actions(driver); 'を使う必要があります。私は答えを更新しました。 –

関連する問題