sample.groovy


package org.ngrinder;


import static net.grinder.script.Grinder.grinder

import static org.junit.Assert.*

import static org.hamcrest.Matchers.*

import net.grinder.plugin.http.HTTPRequest

import net.grinder.plugin.http.HTTPPluginControl;

import net.grinder.script.GTest

import net.grinder.script.Grinder

import net.grinder.scriptengine.groovy.junit.GrinderRunner

import net.grinder.scriptengine.groovy.junit.annotation.BeforeProcess

import net.grinder.scriptengine.groovy.junit.annotation.BeforeThread

// import static net.grinder.util.GrinderUtils.* // You can use this if you're using nGrinder after 3.2.3

import org.junit.Before

import org.junit.BeforeClass

import org.junit.Test

import org.junit.runner.RunWith


import HTTPClient.HTTPResponse

import HTTPClient.NVPair


/**

 * A simple example using the HTTP plugin that shows the retrieval of a

 * single page via HTTP. 

 * 

 * This script is automatically generated by ngrinder.

 * 

 * @author admin

 */

@RunWith(GrinderRunner)

class TestRunner {

public static GTest test

public static HTTPRequest request


@BeforeProcess

public static void beforeProcess() {

HTTPPluginControl.getConnectionDefaults().timeout = 6000

test = new GTest(1, "www.test.com")

request = new HTTPRequest()

test.record(request);

grinder.logger.info("before process.");

}


@BeforeThread 

public void beforeThread() {

grinder.statistics.delayReports=true;

grinder.logger.info("before thread.");

}


@Test

public void test(){

grinder.sleep(500)

HTTPResponse result = request.POST("https://www.test.com/", [new NVPair("ID","test"), new NVPair("passwd","b4dfd2d829dcc39be2ad47a09f2cbbf8")] as NVPair[])


if (result.statusCode == 301 || result.statusCode == 302) {

grinder.logger.warn("Warning. The response may not be correct. The response code was {}.", result.statusCode); 

} else {

assertThat(result.statusCode, is(200));

}

}

}



'IDE & Build > Test' 카테고리의 다른 글

ngrinder - cookie, header  (0) 2014.12.10
Posted by linuxism
,


sample.py


# -*- coding:utf-8 -*-


# A simple example using the HTTP plugin that shows the retrieval of a

# single page via HTTP. 

#

# This script is automatically generated by ngrinder.

#

# @author admin

from net.grinder.script.Grinder import grinder

from net.grinder.script import Test

from net.grinder.plugin.http import HTTPRequest, HTTPPluginControl

from HTTPClient import Cookie, CookieModule

from java.util import Date

from HTTPClient import NVPair


control = HTTPPluginControl.getConnectionDefaults()

# if you don't want that HTTPRequest follows the redirection, please modify the following option 0.

# control.followRedirects = 1

# if you want to increase the timeout, please modify the following option.

control.timeout = 6000


test1 = Test(1, "192.168.0.78")

request1 = HTTPRequest()


# Make any method call on request1 increase TPS

test1.record(request1)

 

class TestRunner:

# initlialize a thread 

def __init__(self):

grinder.statistics.delayReports=True

pass

# test method

def __call__(self):

# Now let's add a new cookie.

threadContext = HTTPPluginControl.getThreadHTTPClientContext()

expiryDate = Date()

expiryDate.year += 10

cookie = Cookie("JSESSIONID", "5B586D37CC93E50CAEAECC726ECE11F4","192.168.0.78", "/", expiryDate, 0)

CookieModule.addCookie(cookie, threadContext)

        

request1.setHeaders([NVPair("x-requested-with", "XMLHttpRequest")])

result = request1.GET("http://192.168.0.78:8080/")

# You get the message body using the getText() method.

# if result.getText().find("HELLO WORLD") != -1 :

#    grinder.statistics.forLastTest.success = 1

# else :

# grinder.statistics.forLastTest.success = 0

# if you want to print out log.. Don't use print keyword. Instead, use following.

# grinder.logger.info("Hello World")

if result.getStatusCode() == 200 :

grinder.statistics.forLastTest.success = 1

elif result.getStatusCode() in (301, 302) :

grinder.logger.warn("Warning. The response may not be correct. The response code was %d." %  result.getStatusCode()) 

grinder.statistics.forLastTest.success = 1

else :

grinder.statistics.forLastTest.success = 0




참조 - http://grinder.sourceforge.net/g3/script-gallery.html#cookies.py, http://junoyoon.tistory.com/entry/nGrinder-POST-%EB%A9%94%EC%8B%9C%EC%A7%80-%EB%B3%B4%EB%82%B4%EA%B8%B0

'IDE & Build > Test' 카테고리의 다른 글

ngrinder - POST, parameter, sleep  (0) 2014.12.10
Posted by linuxism
,

linux - pgrep, pkill

System/Linux 2014. 11. 16. 19:07


 리눅스에서 pkill, pgrep 명령어 사용하기
kill 명령어는 특정 프로세스를 종료시키는 명령어이다. 
하지만 특정 프로세스를 종료시키기 위해서는 먼저 ps 명령어를 이용하여 특정 프로세스를 찾은 후 
다시 kill 명령어를 사용해야 하는 불편한 점이 있다. 
이러한 점을 개선하기 위해서 pgrep 명령어와 pkill 명령어를 이용하여 특정 프로세스에 signal을 보낼 수 있다.

[root@localhost ~]# pgrep apache
4065
12641
12642
12643 
[root@localhost ~]# pgrep -fl apache
4065 /usr/sbin/apache2 -k start
12641 /usr/sbin/apache2 -k start
12642 /usr/sbin/apache2 -k start
12643 /usr/sbin/apache2 -k start
[root@localhost ~]# pkill  apache
[root@localhost ~]# pgrep apache
[root@localhost ~]#

◎ pgrep [option] [패턴]
   ☞ option
  -l : PID와 함께 일치하는 프로세스의 이름을 출력
  -f : -l 옵션과 함께 사용하면 명령어의 경로도 출력
  -n : 패턴과 일치하는 프로세시의 가장 최근 PID 출력
  -x : 패턴과 정확하게 일치되는 프로세서 만 출력

◎ pkill [option] [패턴]
 -f : 지정한 패턴을 명령어뿐 아니라 경로명, 옵션, 아규먼트 등도 비교
-n : 패턴과 일치하는 프로세스의 가장 최근에 실행된 프로세스 하나만 종료
-x : 패턴과 정확하게 일치하는 프로세스만 종료



출처 - http://faq.hostway.co.kr/index.php?mid=Linux_ETC&page=8&document_srl=1567




'System > Linux' 카테고리의 다른 글

centos -Upgrading PHP 5.3.3 to 5.4.4  (0) 2015.01.25
centos - inittab 5 not working  (0) 2015.01.19
fedora - 압축 한글 깨짐  (0) 2014.10.02
linux - dns cache flush  (0) 2014.09.30
linux - Install EPEL Repo  (0) 2014.09.19
Posted by linuxism
,