Reading updated input in a transimeter test as a string

I am trying to read input for an operation in a protractor. I am trying to send ajax request from protractor. I need to send a unique value (which I call groupCode) to the part of the JSON object that I want to send to the server.

So, first I tried to set up hidden input that could be updated. I tried:

<div style='hidden' >
    <input 
        id="group-sendgrid-hidden-input" 
        ng-model='groupCode' 
        value='{{groupCode}}' 
        ng-init='groupCode=dangdangdang'
    >
</div>

Also this attempt to read the model value:

<div style='hidden' >
    <input 
        id="group-sendgrid-hidden-input" 
        ng-model='groupCode' 
        value='{{groupCode}}' 
        ng-init='groupCode=dangdangdang'
    >
   {{groupCode}}
</div>

Now I can see in the Angular console that this value is updated as soon as I am. This means that $scope.groupCodepermits "dangdangdang". Therefore, I do not understand what the problem is. From here, I hope to read the groupCode line in the protractor test as follows:

Here are some of my attempts:

var groupCodeModel      = element(by.model('groupCode'));
var groupCodeBinding    = element(by.binding('groupCode'));
var placeholder         = groupCodeBinding.getText();

( )

var groupCode = element(
    by.id('group-sendgrid-hidden-input')
).getAttribute('value');


// and then later I want to do this:
var sendgridData = {envelope: 'what', test: groupCode};

, , , GroupCode .

  • console.log(groupCode);
  • : var sendgridDataString = JSON.stringify(sendgridData);

, - :

{ ptor_: 
    { controlFlow: [Function],
      schedule: [Function],
      getSession: [Function],
      getCapabilities: [Function],
      quit: [Function],
      actions: [Function],....

, , , , , . -. .

Edit:

:

var groupCode = element(by.id('group-sendgrid-hidden-input')).evaluate('groupCode').then(function(groupCode){

        console.log('test: ' + groupCode);
        return value;
});

:

var groupCode = element(by.id('group-sendgrid-hidden-input')).getAttribute('value').then(function(groupCode){

        console.log('test: ' + value);

    return value;
});

, groupCode :

{ then: [Function: then],
    cancel: [Function: cancel],
    isPending: [Function: isPending] }

- groupCode = 'just some words'. , .

, , . .

+4
2

, , , , it.

0

getAttribute(), , :

element(by.id('group-sendgrid-hidden-input')).getAttribute('value').then(function (value) {
    console.log(value);
});

, promises:

+2

All Articles