簡體   English   中英

在Maven2中使用JTidy

[英]using JTidy with Maven2

我正在使用spring2和Maven進行Java項目。

我已經將JSLint4Java合並到Maven中,但是現在發現自己需要做一些進一步的驗證。

構建中有許多核心頁面,即主頁,搜索頁面等,我想自動測試最終HTML輸出的規范有效性,即來自Maven構建的Valid XHTML 1.1 strict。 生成最終HTML輸出的html模板文件都經過模塊化和分離,因此單獨驗證組件將無法工作,因為它們只有作為一個組件執行后才有效。

我不想測試構建中的每個頁面,因為這會大大降低它的速度,我的偏好是擁有一個XML配置文件,其中包含要在驗證過程中運行的URL列表。

我已經找到了Jtidy項目,但是不確定如何將其合並到Maven構建中,並使其調用特定的URL進行驗證。

有人做過嗎? 有人可以簡要介紹一下我需要執行的步驟嗎?

干杯

如果JTidy確實是您想要的,那么可以使用Maven JTidy插件 它似乎適用於文件,而不適用於URL:

  <build>    
    <plugins> 
      <plugin>    
        <groupId>jtidy</groupId>   
        <artifactId>maven-jtidy-plugin</artifactId>    
        <configuration>    
          <srcdir>src/main/resources/html</srcdir>    
          <destdir>target/html</destdir>    
          <properties>src/main/resources/jtidy.properties</properties>    
        </configuration>
        <executions>
          <execution>    
            <goals>    
              <goal>jtidy</goal>    
            </goals>    
          </execution>    
        </executions>    
      </plugin>    
    </plugins>    
  </build>

除非插件沒有滿足您的要求,否則我不建議您使用exec() (這需要安裝Tidy並因此損害可移植性)。

(編輯:實際上,我不確定您到底想達到什么目的 ,是否需要完全自動化的解決方案,是否需要自動化應用程序的部署等,但是這里還有一些提示。

對於手冊,您可以使用wget保存生成的HTML。 對於GET:

 
 
 
  
  wget http://www.mypage.com/index.jsp?foo=bar
 
  

或使用--post-data選項進行POST:

 
 
 
  
  wget http://www.mypage.com/index.jsp --post-data="foo=bar"
 
  

然后運行JTidy。 如果要自動化,則必須首先使用 maven cargo插件部署應用程序。 然后,您可以將Ant的 Get Task與antrun插件一起使用。 最后,執行jtidy驗證。

如果要在構建過程中驗證生成的 HTML,則需要部署應用程序並對其運行一些工具。 您應該查看w3c-markup-validation-filter 使用maven cargo插件通過過濾器部署應用程序(cargo允許合並web.xml因此您只能為驗證測試​​添加過濾器),並運行一組基本的硒測試來瀏覽頁面並檢查是否有小方框W3cMarkupValidationFilter注入到HTML頁面中是綠色的。)

暫無
暫無

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

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