2016-10-20 1 views
1

Я недавно тестировал тестирование жасмина в своем проекте и пытался реализовать и протестировать функциональность автозаполнения в своем отчете.Jasmine Tests in Spring Maven Project: ожидается, что автозаполнение jQuery UI не распознается в спецификации

Я использую функцию автозаполнения пользовательского интерфейса jQuery и пытаюсь проверить, был ли вызов метода выполнен в моей спецификации. Но тест терпит неудачу, заявив, что функция автозаполнения не распознается.

В приборе я включил javascript-файл, так как мой вызов функции автозаполнения находится в функции document.ready и необходимых jquery jQuery js-файлах.

Я думал, что это может быть проблемой с зависимостями maven, поэтому я включил файл зависимостей, а также файл привязки.

pom.xml (только зависимость и plulgin)

<dependency> 
    <groupId>org.webjars</groupId> 
    <artifactId>jasmine-jquery</artifactId> 
    <version>2.0.3</version> 
    <scope>test</scope> 
</dependency> 

<pluginManagement> 
     <plugins> 
     <plugin> 
      <groupId>com.github.searls</groupId> 
      <artifactId>jasmine-maven-plugin</artifactId> 
      <version>2.0</version> 
      <executions> 
      <execution> 
       <goals> 
       <goal>test</goal> 
       </goals> 
      </execution> 
      </executions> 
      <configuration> 
      <preloadSources> 
       <source>webjars/jquery.js</source> 
       <source>webjars/jasmine-jquery.js</source> 
       <source>http://davidstutz.github.io/bootstrap-multiselect/dist/js/bootstrap-multiselect.js</source> 
      </preloadSources> 
      <jsSrcDir>src/main/webapp/resources/js</jsSrcDir> 
      <jsTestSrcDir>src/test/javascript</jsTestSrcDir> 
      <webDriverClassName>org.openqa.selenium.phantomjs.PhantomJSDriver</webDriverClassName> 
      </configuration> 
     </plugin> 
     </plugins> 
    </pluginManagement> 

Крепеж файл:

<title>Fixture File for auto complete</title> 
</head> 
<body> 
    <form action="javascript:void(0)" method="get"> 
    <input type="text" id="searchAutoComplete" /> 
    </form> 

теги сценария в арматуре, кажется, не приходят в пост. Но я включил в файл как файл js, так и файл jquery-ui.js.

Что вы все думаете о том, что может быть проблемой и как это исправить?

ответ

0

Я изменил pom.xml, как показано ниже:

<pluginManagement> 
    <plugins> 
    <plugin> 
     <groupId>com.github.searls</groupId> 
     <artifactId>jasmine-maven-plugin</artifactId> 
     <version>2.0</version> 
     <executions> 
     <execution> 
      <goals> 
      <goal>test</goal> 
      </goals> 
     </execution> 
     </executions> 
     <configuration> 
     <preloadSources> 
      <source>webjars/jquery.js</source> 
      <source>webjars/jasmine-jquery.js</source> 
      <source>${project.basedir}/src/main/webapp/resources/js/lib/jquery-ui.min.js</source> 
      <source>http://davidstutz.github.io/bootstrap-multiselect/dist/js/bootstrap-multiselect.js</source> 
     </preloadSources> 
     <jsSrcDir>src/main/webapp/resources/js</jsSrcDir> 
     <jsTestSrcDir>src/test/javascript</jsTestSrcDir> 
     <webDriverClassName>org.openqa.selenium.phantomjs.PhantomJSDriver</webDriverClassName> 
     </configuration> 
    </plugin> 
    </plugins> 
</pluginManagement> 

Я добавил JQuery-min.js в библиотеку проекта и включал в себя путь в pom.xml. Таким образом, это работает.

Смежные вопросы