簡體   English   中英

缺少“作為 JUnit 測試運行”

[英]Missing "Run as JUnit Test"

我通過右鍵單擊 Java class 並選擇新建 JUnit 測試用例,在 Eclipse 中創建了一個 JUnit 4 測試。 當我右鍵單擊測試 class 時,我得到“在服務器上運行”,而不是“作為 JUnit 測試運行”。 我正在使用 Eclipse 3.6.1。

就我而言,Eclipse 必須已達到損壞狀態。 重新啟動 Eclipse 解決了該問題。

我想我看到了問題。 在 Eclipse 將其識別為測試用例之前,您需要在文件中進行實際測試。 嘗試插入以下內容:

@Test
public void foo() {

}

對於 junit5,在構建路徑和項目方面需要 jdk8。

  1. 確保您的類具有 JUnit 特性(從TestCase擴展,或使用@Test等);

  2. 右鍵單擊“運行方式”->“運行配置”->無論如何從左側圖標“JUnit”創建JUnit測試;

如果您在 maven 項目中遇到它,請將以下內容添加到 pom.xml 並使用 Alt+F5 重新加載項目。 測試不起作用,因為舊的 JDK 版本。

<properties>
    <maven.compiler.target>1.8</maven.compiler.target>
    <maven.compiler.source>1.8</maven.compiler.source>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>

確保您的測試類具有有效的默認構造函數。

就我而言,問題是不同的。 我正在將 TestNG 測試轉換為 JUnit。 TestNG 導入滿足 @Test 注釋,但這是錯誤的注釋。 我刪除了TestNG導入並為@Test添加了JUnit導入,並且出現了作為JUnit測試運行的右鍵菜單選項。

  1. 檢查您是否有 jave 8 或更高版本並在構建路徑中配置了正確的 jdk。
  2. 檢查至少@Test 在您的測試用例類文件中使用
  3. 然后去運行配置->選擇Junit->右鍵單擊並新建配置->瀏覽包->選擇junit5作為測試運行器。

在此處輸入圖片說明

在將現有項目導入到基於Kepler 的 Eclipse IDE for Java Developers版本時,我遇到了這些症狀。

將項目導入Java EE 開發人員的基於 Luna 的 Eclipse IDE正確地將其設置為 Java 項目(項目圖標現在包含那個小J ),現在允許運行 JUnit 測試。

在我的情況下,Java Build 路徑( .classpath文件)已損壞。 特別是它有一個未解決的合並沖突。 因此,缺少 JUnit 4 庫。

我曾經有過類似的問題,結果證明是因為我在聲明中的“ClassToBeTestedSpec”之后忘記了“擴展規范”。

確保包含import org.junit.Test; 並且測試之前有@Test ,我之前在處理其他文件中的某些功能時錯過了這一點。

為了解決這種情況,在我的情況下重新啟動 eclipse 是不夠的,我還必須刪除該項目並將其重新添加到我的工作區中。

如果,則配置為 Junit 的 SpringRunner.class。 確保使用 Maven 更新和刷新的 Maven 全新安裝在您的項目中使用正確的 jdk 和 Maven 密碼/配置運行。

這對我來說再次發生,這次是 Junit 根本沒有添加到類路徑中(但過去是)。 這是我使用Junit的第一個Eclipse項目 5.可能與此有關? 我知道這是一個非常古老的帖子,但我認為由於最近的原因可能需要它。

  • 右鍵單擊您的項目並選擇“屬性”
  • 選擇構建路徑 - >配置構建路徑
  • 單擊庫選項卡。
  • 單擊添加庫按鈕。
  • 單擊 JUnit 和下一步按鈕。
  • 選擇 JUnit 版本。 (對我來說,Junit 5)
  • 單擊完成。

信息來自https://www.eclipse.org/forums/index.php/t/304679/

運行 Junit 測試的 Eclipse 快捷方式是Alt+Shift+X, T 如果它不起作用,只需按Alt+shift+X將彈出一個菜單,只需查找 Junit。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM