代码之家  ›  专栏  ›  技术社区  ›  user6673915

我收到了一条关于我在使用testng构建时没有使用的包的错误消息

  •  0
  • user6673915  · 技术社区  · 6 年前

    我正在尝试使用Intellij和TestNG构建回归套件,不知道为什么会发生这种情况。当我尝试运行它时,我会得到以下信息:

    enter image description here

    我的文件结构是:

    AutoSuite/
    |-.idea/
    |- out/
    |- src/
    |-- com/
    |--- site/
    |------ data/
    |--------- urlData.java
    |------ homepage/
    |--------- Homepage.java
    |- tst/
    |-- com/
    |--- site/
    |------ homepage/
    |--------- HomepageTest.java
    |- AutoSuite.iml
    |- External Libraries/
    

    java文件中的代码如下:

    主页JAVA 程序包com。地点主页

    public class Homepage {
    
        public String siteTitle() {
            return "site.com/";
        }
    
    }
    

    urlData。JAVA

    package com.site.data;
    
    public class urlData {
    
        private static String DEV_WEB = "site.com/";
    
        public String returnPROD(){ return DEV_WEB; }
    }
    

    主页测试。JAVA

    package com.site.homepage;
    
    import com.site.homepage.Homepage;
    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.firefox.FirefoxDriver;
    import org.testng.Assert;
    import org.testng.annotations.*;
    
    public class HomepageTest {
        private WebDriver driver;
    
        Homepage homepage;
        String titleTag;
    
        @AfterClass
        public void afterClass() {
            driver.quit();
        }
    
        @BeforeMethod
        public void setUp() {
            driver = new FirefoxDriver();
        }
    
        @AfterMethod
        public void tearDown() {
            driver.close();
        }
    
        @BeforeTest
        public void initStringsAndObjects() {
            homepage = new Homepage();
            titleTag = "Site title tag";
        }
    
        @Test (priority = 1, groups={"Layout"})
        public void testSiteTitle() {
            driver.get(homepage.siteTitle()); 
            Assert.assertTrue(driver.getTitle().equals(titleTag)); 
        }
    
        @AfterTest
        public void cleanup() {
            titleTag = null;
            homepage = null;
        }
    }
    

    我想也许我需要一个测试。xml文件位于下 AutoSuite/ 但即使将其添加到 Edit Configuration > Suite > testng.xml 我得到了错误。所以我把它拿走了。

    然后我通过选择下面的文件来确保在依赖项中有testng Project Preferences > Modules > Dependencies 它就在那里。

    我错过了什么?

    1 回复  |  直到 6 年前
        1
  •  0
  •   Lennart Deters    6 年前

    您使用的是selenium,它有自己的依赖项。 要修复缺失的依赖项,您必须使用Maven或Gradle之类的构建系统来为您处理这些事情,或者使用包含所有依赖项的selenium版本(称为独立版本): https://www.seleniumhq.org/download/