2012-08-07 3 views
2

soapUI를 사용하여 REST API 프레임 워크를 테스트 할 예정입니다.SOAP UI, REST API, 데이터베이스 업데이트

soapUI 도구를 사용하여 파일 형식 (csv, txt 등)의 데이터로 MongoDB 내부에 레코드를 삽입/업데이트 할 수있는 방법이 있습니까?

내가하려는 것은 API 호출을 확인하고 데이터 파일에서 데이터베이스를 업데이트하는 것입니다.

+0

무엇 soapUI 도구입니까? – Paparazzi

+0

http://www.soapui.org/?utm_expid=56905-6&utm_referrer=http%3A%2F%2Fwww.google.com%2Furl%3Fsa%3Dt%26rct%3Dj%26q%3D%26esrc%3Ds%26source% 3Dweb % 26cd % 3D1 % 26ved % 3D0CGwQFjAA % 26url % 3Dhttp % 253A % 252F % 252Fwww.soapui.org % 252F % 26ei % 3Dim0hUNDcH9LC6gHR3IGwCw % 26usg % 3DAFQjCNE0DhyxZHa40M-2y2xo7zFzQJHB0A 26sig2 % 3DaoMucKIAgBOIuFTPYZ_nZA – Sanket

+0

내가 몇 가지를 얻을 수 mongoexport을 사용하여에보고 싶은데 % 데이터 출력 : http://www.mongodb.org/display/DOCS/mongoexport – ranman

답변

0

Groovy 스크립트를 사용하고자한다면 쉽게 할 수 있습니다.

jdbc 드라이버를 SoapUI의 bin \ ext 디렉토리에 두십시오.

https://github.com/mongodb/mongo-java-driver/downloads 는 (아마 어디 MongoDB를 위해 그것을 할 수있는)

그런 다음 당신은 당신의 스크립트에서 대략 이런 일을해야

import groovy.sql.Sql 

def groovyUtils = new com.eviware.soapui.support.GroovyUtils(context) 
groovyUtils.registerJdbcDriver("org.postgresql.Driver") // NOT SURE WHAT STRING FOR MONGODB 

def connectString = "....." 
sql = Sql.newInstance(connectString) // TEST YOUR CONNECT STRING IN A SQL BROWSER 
def misc = sql.firstRow("SELECT * from table") 

groovy.sql.Sql은 아주 좋은 것입니다!

http://groovy.codehaus.org/api/groovy/sql/Sql.html

+0

그래서 내가 필요한 건 SoapUI professional이고, SoapUI로 내 API 설정을 구성한 다음 jdbc 드라이버를 가져 와서 스크립트를 작성하고 식별자를 API 게시물과 일치 시키시겠습니까? – Sanket

+0

SoapUI 프로가 필요하지 않습니다. JDBC 드라이버를로드하고 연결 문자열이 올바른지 확인해야합니다. 그런 다음 Groovy 스크립트를 사용하여 SQL을 실행하십시오. Groovy 스크립트에서 일치하는 데이터를 기반으로 어설 션을 만들 수 있습니다. – chrismead

+0

크리스. 도움이되었다. 그래서 내 솔루션을 만약 내가 picturise - http://www.soapui.org/Data-Driven-Testing/storing-data/All-Pages.html 필요가있다. – Sanket

0

쉽게 테스트 케이스의 '그루비 테스트 단계 "에서 그루비 코드 아래 사용하고 MongoDB를 연결할 수 있습니다. 그 그 MongoDB의 자바 클라이언트 jar 파일을 보장하고 gmongo는 soapUI 설치 {설치 디렉토리} \ 빈 \ 내선 폴더에

Gmongo 있습니다하시기 바랍니다 전에 : http://mvnrepository.com/artifact/com.gmongo/gmongo/1.5

MongoDB의 자바 클라이언트 : http://mvnrepository.com/artifact/org.mongodb/mongo-java-driver/3.2.2

import com.gmongo.GMongoClient 
import com.gmongo.GMongo 
import com.mongodb.MongoCredential 
import com.mongodb.ServerAddress 

//def credentials = MongoCredential.createMongoCRCredential('admin', 'students', 'admin' as char[]) 

//def client = new GMongoClient(new ServerAddress("127.0.0.1:27017")) 

context.gmongo=new GMongo() 
def db=context.gmongo.getDB("test") 
log.info db.fruit.find().count() 

db.fruit.find().each{ 

    doc->log.info doc 

    }