-

   rss_rss_hh_new

 - e-mail

 

 -

 LiveInternet.ru:
: 17.03.2011
:
:
: 51

:


Pega-: Ninja

, 02 2017 . 13:37 +
no coding, Pega , . , - Pegasystems.

, Pega. Pega BPM- CRM-.

Pega, Ninja Pega. , .




2015 Pega .

. , , . , Java-, Pega. , , .

-


, , 32 (rule Pega, Java /, ). , .

2015 , back-end .

. .

, , , , . , , -.

, , . .

. :
  • ;
  • , ;
  • , ;
  • .


, , , . .

, , , . ( ) . , , , .





.
  • - , , , - ( ) . .
  • , wiki , . , , .
  • , , .


Java , Java- : , test-driven development continuous integration. Pega-.


, .. 80% .

6 .
  • Connect activity , .
  • Request mapping data transform -.
  • Stream XML XML.
  • Connector rule .
  • Parse XML XML .
  • Response mapping data transform -.


Stream Parse XML Connector and Metadata Wizard . Connector Connect activity. Connect activity Request/Response mapping data transform, .. .

.


  • Connect activity , .
  • Request mapping data transform .
  • Response mapping data transform .
  • , XML , XML ( ).


:

  • , , ( );
  • , , ( inner-com , );
  • , .


Pega


, , Pega Test Cases , . , , : .

, Connect activity, Data transform, .. ( ) Data Pages, , , (Activity, Report Definitions, Data Transform ..).

, Pega inner-com . , Integration Simulation, , , .

, Pega.

  • Pega 7.2 ( Pega 7.1.8) . .
  • : Pega 7.2, .
  • , .
  • Pega (Data Pages, Activity, Decision Table, Decision Tree, Flow, Service SOAP).


.

Research & Development


Java Pega . , . :
  • ;
  • Mock Stub ( Mock Stub Java);
  • , ;
  • build-.


c - . : , .

Pega-. , Ninja.




Ninja


Ninja Java , JUnit . , Pega , Java.

, Ninja .

-, Ninja Pega ( web-, Pega Designer Studio) . , checkout. : Pega checkout , . , check-in. .

-, Ninja . Requestor ( ), Ninja, Tracer Pega, . Tracer .

, Ninja .

final String myClass = "MyOrg-MyApp-Work-MyCase";
// prepare a Top-level page
preparePage("MyTopLevelPage").create(myClass)
 .prop("pyLabel", "This is my top level page for a case")
 	.prop("MyProp", "My value");
// prepare parameter
prepareParameter("myParam").value("My param value");


, . .

// mock nested activity invocation
expect().activity().className("MyOrg-MyApp-Work-MyCase").name("NestedActivity").andMock(new MockBehaviour() {
	@Override
	public void process(MockActivityContext context) throws Exception {
 	       // assert parameters
 	      context.assertParameter("myParam").value("My value");
             // assert Primary page
 	       context.assertPrimaryPage().prop("MyProp", "My value");
            // assert Top-level page
 	       context.assertPage("TopLevelPage").exists().prop("pyLabel", "This is my TLP");
            // set properties in Primary
 	       context.preparePrimaryPage().prop("pyNote", "My note for this page");
 	       // set parameters on Top-level page
 	       context.preparePage("TopLevelPage").prop("pyLabel", "This is MODIFIED TLP");
 	       // set parameters
 	       context.prepareParameter("myResult").value("Success");
	}
});


//mock Obj-Browse method invocation
final String opClass = "Data-Admin-Operator-ID";
expect().objBrowse().page("OperatorList").className(opClass).andMock(new MockBehaviour() {
	@Override
	public void process(MockObjBrowseContext context) throws Exception {
 	      // prepare result set
 	      final PreparePageList pxResults = context.preparePage("OperatorList").prop("pxResultCount", "2").pageList("pxResults");
 	      pxResults.append(opClass).prop("pyUserIdentifier", "info@pegadevops.com").prop("pyLabel", "Operator ID record");
 	      pxResults.append(opClass).prop("pyUserIdentifier", "alexander.lutay@pegadevops.com").prop("pyLabel", "Operator ID record");
	}
});


, Pega. GUI, Ninja Flow, Flow Action, Section GUI .

// what about covering a Function with a unit test?
invoke().function().ruleSet("MyRuleset").library("MyLibrary").name("Func").args().string("My string").longO(123).date(new Date());
 // would you like to unit test a When rule?
invoke().when().primaryPage("pyWorkPage").name("ToBeOrNotToBe");


.

// assert activity status
assertActivityStatus().good();
// assert Clipboard state
assertPage("MyTestPage").exists().propAbsent("ErrorCode")
	.prop("ResultCode", "0").propPresent("ResultDescription");
// assert Params
assertParameter("MyParam").value("Some value");


Ninja Cookbook GitHub.
Ninja .

  • Connect activity (mocking) . , .
  • (Function, Decision , Data Pages), Data Transform .
  • Connector , inner-com , XML, .


, , .


2017 , : , (Prod-), .

, . . Prod- 2017 350 . , , 2017 , 1650 , 15 .

build- 30 . , 30 .

Ninja Dev-QA, .. Dev- .

QA, , .


, Pega: Java , Pega, , .

, Ninja:

  • Rule Refactoring ;
  • Code analysis ;
  • Code review ;
  • Release automation ;
  • Continuous delivery pipeline continuous delivery.


, Ninja. , Ninja DevOps Pega.

, , : - .

Ninja .



:
?

4 . 1 .

?

4 . 1 .

Pega?

5 . .

. , .

Original source: habrahabr.ru (comments, light).

https://habrahabr.ru/post/334648/

:  

: [1] []
 

:
: 

: ( )

:

  URL