header
Web Services in WS-BPEL

Tag:
Edit edit   Starstar

Program Information

Name: Web Services in WS-BPEL
Domain: web service and application
Functionality: A classical WS-BPEL example of the Loan Approval Service.
Input: $req\_amount$, represents the loan amount. $ap\_reply$, represents approver response. $as\_reply$, represents assessor response. These values are organized in a theoretical test case:$(req\_amount, ap\_reply, as\_reply)$. 
Output: $accepted$, represents the final result, if loan is accepted or not.

Reference

 Application of Metamorphic Testing to a Case Study in Web Services Compositions https://doi.org/10.1007/978-3-642-35755-8_13 

MR Information

Data with 1 belongs to original test case and data with 2 belongs to a new test case.   

MR1------

Description:
Property: $req\_amount_2=req\_amount_1*10 \wedge ap\_reply_2=not(ap\_reply_1) \wedge as\_reply_2=as\_reply_1 \Longrightarrow$ $accepted_2=accepted_1 \wedge ap\_reply_2=accepted_2$ when $req\_amount_1*10 > 10000$
Source input: (1500,false,low)
Source output: true
Follow-up input: (15000,true,low)
Follow-up output: true
Input relation: $req\_amount_2=req\_amount_1*10 \wedge ap\_reply_2=not(ap\_reply_1) \wedge as\_reply_2=as\_reply_1$
Output relation: $accepted_2=accepted_1 \wedge ap\_reply_2=accepted_2$ when $req\_amount_1*10 > 10000$
Pattern:

MR2------

Description:
Property: $req\_amount_2=req\_amount_1*10 \wedge ap\_reply_2=not(ap\_reply_1) \wedge as\_reply_2=as\_reply_1 \Longrightarrow$ $accepted_2=not(accepted_1) \wedge ap\_reply_2=accepted_2$ when $req\_amount_1*10 > 10000$
Source input: (1500,false,high)
Source output: false
Follow-up input: (15000,true,high)
Follow-up output: true
Input relation: $req\_amount_2=req\_amount_1*10 \wedge ap\_reply_2=not(ap\_reply_1) \wedge as\_reply_2=as\_reply_1$
Output relation: $accepted_2=not(accepted_1) \wedge ap\_reply_2=accepted_2$ when $req\_amount_1*10 > 10000$
Pattern:

MR3------

Description:
Property: $req\_amount_2=req\_amount_1*10 \wedge ap\_reply_2=ap\_reply_1 \wedge as\_reply_2=as\_reply_1 \Longrightarrow accepted_2=accepted_1$ when $req\_amount_1*10 \leq 10000$
Source input: (150,false,low)
Source output: true
Follow-up input: (1500,false,low)
Follow-up output: true
Input relation: $req\_amount_2=req\_amount_1*10 \wedge ap\_reply_2=ap\_reply_1 \wedge as\_reply_2=as\_reply_1$
Output relation: $accepted_2=accepted_1$ when $req\_amount_1*10 \leq 10000$
Pattern:
Insert title here