Identical feature on two devices but different behaviors/scenarios for BDD testing - testing

The feature : As a user, I want to be able to change the anniversary of a panda
We have two versions of our app : Desktop / Mobile
On desktop we have to go to the detail page of a panda -> we click to the change anniversary date button -> pop up where we can enter the new date, we validate and it's done. It gives this scenario :
Given the user is in the detail page of a panda
and the user is logged
When the user update the anniversary date of the panda
Then the anniversary date is updated
On mobile we have to select the menu change anniversary date -> new page where we enter a panda name -> we are send to a new page where we enter the new anniversary date. We validate and it's done. It gives this scenario :
Given the user is in the Change Anniversary mode
And a panda is selected
And the user is logged
When the user update the anniversary date
Then the anniversary date is updated.
If I found easy to write scenarios for the desktop, for the mobile I'm blocked on the possible scenario to select a non existing panda. This behavior can't exist on the desktop since we have a list of panda and we have to click on one to go to the detail page. Instead of that, on mobile we have to enter the name of a panda so it's possible we enter a non existent name. I have for the moment this scenario but I don't like it :
Given the user is in the Change Anniversary mode
And the user is logged
When the user enter a non existing panda name
Then an error message is shown
&
Given the user is in the Change Anniversary mode
And the user is logged
When the user enter an existing panda name
Then the panda is selected
And I'm blocked because the new feature offered is identical on both device. Do I need to make my behaviors/scenarios match between Desktop and Mobile or is it okay that my behaviors/scenarios are a different based on the platform ? If I choose the second option How do I precise the platform : on the title scenario or in the Given ? What about all others scenarios I already written ? I hope someone already find a solution for this problem :p
Thank you for your help !
EDIT : I added the title feature and some scenarios I have for the moment :)

Your examples are not very clear, you say On desktop we have to go to the detail page of a panda -> we click to the change anniversary date button -> pop up where we can enter the new date, we validate and it's done. It gives this scenario but in the scenario you mention that the user is logged and i don't see where this happens, before needing to select a panda or after.
Just from what I could understand, you have 2 options:
have different scenarios for mobile and desktop, you can annotate with a platform tag e.g. #mobile and based on this tab to open the specific platform, or just create different suites, one for mobile(if you have native application) and one for desktop
don't add specific platform details and handle the details in the implementation
Given I am logged in
When I change the anniversary date for a panda
Then the anniversary date is changed
What I recommend: If there are just few differences you can use the second option, but it you have a lot of them then maybe it's better to have different scenarios for mobile and desktop, also if you have native app then I would say to execute them in different suites

Since my behaviors are different and my users are different for the mobile and desktop app I decided to separate my scenario and like lauda said, it gives me the ability to use a different solution to test if it was a native mobile app (not in my case now but for others ^^).
In my project, mobile and desktop scenarios are separate in different files :
../features/anniversary_panda/desktop/
Background: Login
Given the user is logged in as a panda manager
Scenario: Change anniversary date for a panda
Given the user is in the detail page of a panda
When the user update the anniversary date of the panda
Then the anniversary date is updated
../features/anniversary_panda/mobile/
Background: Login
Given the user is logged in as a veterinary
Scenario: Change anniversary date for a panda
Given the user is in the Change Anniversary mode
And a new date is already entered
When the user enter an existing panda name
Then the anniversary date is updated
Thanks for your help, just explaining my case to you helps me a lot :)

Related

Automatic Screen Shots with specific banner ads

I manage a website that serves banner ads using Google DFP.
A couple customers have been asking for daily screen-shots of the website which show thier ad in place. While most advertisers are happy with a report showing impressions/clicks, a couple are demanding the screen shots.
I have found a few tools that can get a screen shot from a specific page on a scheduled basis. I am running into 2 problems with most of these...
1) The "screen shot" does not always reflect what the site looks like after all of the javascript has applied. I need to wait until the javascript finishes before the screen shot is saved
2) I rotate mulitple ads into positions. I do not have a way to control which ad appears when the screen shot is taken.
Is this a common request to get?
Has anyone come up with an honest solution to either of these questions?
You can use irobotsoft tool. Go to your website, then use:
CapturePage(filename)
to capture the page into an image file. You can let it capture on a fixed schedule, or test the ad content before capturing.

is there a url for opening roundcube calendar the day of a given event?

I wrote a web apps that create a kolab Event et put it in calendar.
now, i wish to create link in my apps that will go to the identified event directly in roundcube.
since in Know the day, it could be possible to give a date instead of the ID of the event.
anyone know of such feature in Roundcube ?
with some luck, I found my Answer by navigating in the calendar. if a go to the «next week», the url change in we got a beautiful
https://kolab.mydomaine.fr/roundcubemail/?_task=calendar&view=agendaWeek&date=1392678000
with date = the timestamp of the day I wish to show.
so, with a little python (using django)
def get_absolute_url(self):
timestamp = int(time.mktime(self.event.get_start().timetuple()))
return "https://{kolab_domaine}/roundcubemail/?_task=calendar&view=agendaWeekdate={timestamp}".format(kolab_domaine=self.get_kolab_domain(), timestamp=timestamp)

iTunes Connect: Where did the vendor id go?

As of yesterday, Monday 2/17/2014, the iTunes Connect site changed. I can no longer find the vendor id on any of the iTunes connect pages. I find the Apple ID fine for each app, but I need the vendor id, not the app id.
We have been running the autoingestion tool for years to pull download numbers for our clients' apps. As of yesterday I can no longer find this vendor id for the autoingestion tool.
Can somebody point me to where I can find this id?
With the last update on iTunnes Connect, in the Sales and Trends section, pressing on the top
right menu that shows "Top Content" can access to the Reports entry (direct link).
There you can see the "Vendor" selector, pressing on it you can see the Details of the vendor with the following format:
VendorName - VendorId
Hope it helps.
There is another way with the existing reportingitc2 URL. Choose "Reports" from the top left menu (Where default is "Top Content"). From the form that will be shown, choose monthly report and download. The downloaded file will be of format S_M_(VendorID)_TIMEPERIOD.TXT
Read on Apple Dev Forum
"Removing the numeral 2 in the url reverts back to the old interface."
so visit
"https://reportingitc.apple.com/index.html" instead of
"https://reportingitc2.apple.com/index.html"
https://devforums.apple.com/thread/219844?tstart=0
Its works but I don't know how long it will work for.

No way to accept Itunes Connect Agreement Update

I'm walking in circles trying to create a new app in Apple's Itunes Connect. Here are the steps I'm doing:
When I log in to Itunes Connect I'm seeing a screen asking me to "Review the iOS Developer Program License Agreement."
I click continue and then I'm presented with a "Manage Your Apps" screen.
I click Add New App and it sends me to... the Agreement Update again:
So I click on Members Center this time and it goes here:
Clicking on Itunes Connect sends me back to... yes, the Agreement Update once more.
How do I solve this issue? Where is the secret door to adding a new app?
I got stuck here too - here's how it went for me:
Nothing showed up in iTunesConnect's finance/agreement area at first (... even though the links kept sending me there!)
I eventually found something to view/accept at the top of the general Apple Member Center home page.
After step 2, something new finally showed up in iTunesConnect's finance/agreement area that I could accept
After above steps I was able to continue what I was trying to do in iTunesConnect which, in my case, was setting up some new promo codes for my app.
Had the same problem. Tried clearing cookies and cache per above recommendations, nothing. Waited 20m, bingo. Looks like your contract acceptance has to go through some review process, whether manual or automatic, taking a bit of time. I imagine the cookies/cache-clearing having worked was simply you cleared at the right time.
Solution: Open the Link https://itunesconnect.apple.com from Laptop Not Mobile. It will ask you to Accept the Terms and condition. While you open the link from mobile the Accept option will not visible to you. So open the link from Laptop and Accept the terms and condition.
***If you are already registered in TRACES, please login with your registered User Id (PAN), Password & PAN else register as new user*emphasized text****
enter image description here
Had the same problem. Tried clearing cookies and cache per above recommendations, nothing. Waited 20m, bingo. Looks like your contract acceptance has to go through some review process, whether manual or automatic, taking a bit of time. I imagine the cookies/cache-clearing having worked was simply you cleared at the right time.

Implementing "Rate application" functionality on a Windows Store app

I am trying to implement rating functionality in a Windows Store application using HTML / Javascript.
I am showing a popup dialog similar to the one below within the application and when "Rate" is clicked I would like to redirect to the Marketplace where the user can then rate the application.
This is a task that can easily be done on Windows Phone 7 via the MarketplaceReviewTask.
Is there an API on Windows 8 that I could call to have this achieved?
The Rate and Review link in the Settings charm will automatically appear for users other than yourself (since you can't rate your own app).
If you want a custom link somewhere, you can use LaunchUriAsync like Jim says, using this URI:
"ms-windows-store:REVIEW?PFN=[my-pfm]"
where my-pfm is "Package Family Name" which you will find in your application manifest.
Here's a blog post I found that's helpful:
http://www.andybeaulieu.com/Default.aspx?tabid=67&EntryID=227
If you use protocol activation (LaunchUriAsync) with the URI format suggested here you'll get to your app's page on the Store; however, there's still an additional step for the user to click Write a Review. There may be a way to deep link to it and I'll update if I find out.