Workitem state and reason - visual-studio-2010

I can only select Active and Closed as state and Issue Resolved as reason when editing a workitem in VS2010. I have consulted the TFS Power Tools work item field explorer and it shows me a bunch of possible values for System.Reason and System.State.
Does the process template affect the options (I'm using the default MSF agile template), am I blind or is something wrong here?
Best reagards

It sounds like you have a work item of type "Issue". The process template defines both work item types, possible states for each work item type as well as state change transition rules. While there are many possible values for System.Reason and System.State, the "issue" work item type is very limited.
The "issue" type can only be in states "active" or "closed". When moving from "active" to "closed", the only possible reason is "issue resolved". When moving back from "closed" to "active", the only possible reason is "reactivated."
More information about the "issue" work item type is available on MSDN.
As you note, the "issue" work item type is fraught with limitations. It's often more useful to use a bug or a task work item type to define work that needs to be done in your sprint.

In the agile for msf template which you are using, the default workflow for issues is as you mentioned: from active to closed.
If you wish to change it, you may modify the issue's work item type definition. You may use the tfs power tools to do so with a graphic interface, or edit the xml and upload it with the command line.
Other templates and other work item types have different workflows.

Related

How to set priority in Microsoft Luis Patterns?

I am using pattern recognition to catch entities with a variable size. Here are situation that i am trying to catch
1- {entity1} (has| had| have) [the] {entity2}
2.1- {entity1} (has| had| have) the {entity2}
2.2- {entity1} (has| had| have) {entity2}
i tried the 1 pattern or the 2.1 and 2.2 at the same time.
The problem is that when i enter: "Person have the properties"
the entity2 is marked as "the properties" instead of just "properties"
Is there a way to mark priority or work around this problem?
Sorry for english mistakes i hope that the question is clear enough.
There is no way you can set priority in LUIS patterns. However, given your situation above, where the entity is getting extracted incorrectly, you might want to make use of explicit lists. You can create an explicit list via the authoring API to allow the exceptions when:
Your pattern contains a Pattern.any
When that pattern syntax allows for the possibility of an incorrect entity extraction based on the utterance.
Also, make sure to refer to the best practices(https://learn.microsoft.com/en-us/azure/cognitive-services/luis/luis-concept-best-practices#do-and-dont) for LUIS apps to make sure your app behaves with improved accuracy.
Hope this helps.

Multilingual mobile app using AccessibilityIDs for Appium - bad recipe

My team supports a mobile app that is offered in several languages. I asked the team to implement AccessibilityIDs so that I can run Appium tests, which they did. (Why did I ask this? Because everyone in Appium testing is conveying that this is the best approach.)
Later - testing of the app's real world accessibility (using assistive technology - aka talkback or screenreader) revealed that using contextual information is desired. For example, if a button has text "Submit your order" ideally the Accessibility ID should be "Submit your order" not something like "form_page_submit_button"
The team brainstormed and the solution was to create a lang file for an obscure language that we don't plan to support. We settled on "pt-PT" so all the elements could have an accessibility ID that was not likely to change for some time.
This is now becoming a problem as I would like to have visual automated tests in English and French, not just Portuguese, and I am hoping to not have to maintain xpaths with ORs in it. For example, //*[contains(text(),'Submit') or contains(text(),'Soumettre')] ie, English and French.
In light of the fact that my app needs to be accessible to users more than it needs to be accessible for test script, I am evaluating which element selector strategy to recommend going forward. I am prepared to recommend using ID or name to alleviate this issue, but would like to get more thoughts on what others are doing in this space.
Going with ID's and names sort out the situation as mentioned in this answer.
If you like to use the XPath then you can use a dictionary variable to store the text based on the region i.e. [EN='Submit', FR='Soumettre'] and set the locators with the text-based on the region by using the dictionary values using the region as key and appending the text to the locator i.e. framing the locator dynamically based on the region might work out.
As I worked on Robot framework, using some piece of code to depict it and using collections and string library of robot framework
*** Variables ***
${region} EN #set this var as per region
${loc} xpath = //*[contains(text(),'replace_text')
&{submit_loc_text} EN=Submit
... FR=Soumettre
*** Keywords ***
implementation
${text_asper_region} Get From Dictionary ${submit_loc_text} ${region}
${loc} Replace String ${loc} replace_text ${text_asper_region}
Set Test Variable ${loc} ${loc}
If you still prefer to use accessibility ids and support all languages, I would suggest to create interface for every language to get the relevant accessibility locators. This will be easy to understand and maintain ofcourse efforts will be little more but I think it will be worth.

Document Core Pack not printing correct template

I am using DCP with MS CRM to print documents based on templates. I have multiple templates for different business units. I follow the code during debugging and the Guid is pointing to the correct template. It goes to the printer and prints out the wrong template.
Things I have looked at;
I know its damn near impossible but have two templates fluked the
same Guid? No
Does the correct template have the wrong
information. No
I don't understand why its happening. Right up to the point of printing, the Guid IS the correct Guid for the correct template. When I go to the printer, wrong template with the right merged feilds. And the template is attached to the order. (Which is also wrong)
== UPDATE ==
Looking into the database, there are 2 templates with the same name. However only 1 of them shows in the list in Word so I can not see the content of the other. Still looking for solution.
There were two templates in the database. One of them was inactive and one active. My code was selecting ALL templates with that name and giving back the first or default one.
I changed the code to only select active templates. This solved my problem.

Share All Resharper code formatting/inspection options

As denoted in This Article ReSharper's .sln.DotSettings file contains only those settings which values changed from default ones. Is there a way to store all the code editting and code inspection settings in a team-shared layer, regardless of the value being changed or default?
The only way to do this I see is changing each and every value and switching it back (so all of them end up in .sln.DotSettings file), however this seems to be quite a time-consuming task.
The problem I'm trying to avoid is as follows:
Suppose a team has 2 developers, say Jessika and John, and they decide that they are OK with Resharper's default to prefix private fields with with an underscore:
int _myPrivateField = 1;
So they are not changing the "Instance fields(private)" setting under "C# Naming Style" section and check in the .sln.DotSettings file.
However, when Jessica checks out the source code on her home laptop it Resharper still suggests using
int myPrivateField = 1;
because her computer has its setting changed to have no prefix, saved as "Save to this computer". As denoted in Resharper's docs if a "This Computer" layer has a value for a setting, whereas the other layers don't the value will be applied (see the middle green setting in this picture: http://blogs.jetbrains.com/dotnet/wp-content/uploads/2012/08/layers3.png
Regrettably, at the moment we can offer no option other than changing options one by one and saving them in the requisite layers. We are aware that this approach is inconvenient, and are in discussions as to how to best handle this.

Is there any way to clear out the "Testers" field in Microsoft Test Manager (or in TFS)

Seems like once you set the Testers field on a Test Case in MTM, it will not allow you to clear it. You are only allowed to change it to a different value. Has anyone found a way to clear this field?
It is important to not get the "Assigned" Tester field confused with the Assigned To field. They are distinct fields on a Test Case work item. One reason why someone might want the Tester field to be blank is if a team all pitches in to help with testing during an iteration and leaving the assigned tester blank allows the team to know that no one has "picked up" this test to execute. The team member could then assign the test to his or herself and execute it.
The template pulls the Assigned Tester Values from a list using the 'AllowedValues' tag. Instead, simply change this to 'SuggestedValues'. That will allow for empty values - easy as that.
If you'd rather not allow free entry, you can also add a default value such as 'None' and use that rather than blank.
Unless you've customized your work item type, this field should never be blank after being saved. It defaults to the person who created the bug in all Microsoft supported process templates, and a value is required by default.
That being said, why would you want to change it to blank?
If you really, really want to be able to blank it out (which I don't think is a good idea at all), you'll need to customize your template. See the below guidance:
http://msdn.microsoft.com/en-us/library/ms243849(v=vs.110).aspx

Resources