- Overview
- Guides
- Concepts
- Considerations And Constraints
- Absolute File References
- Assembly Colocation Assumptions
- Concurrent Use Of Test Resources
- Cross Application Domain Testing
- Heavily Executed Code Under Test
- Implicit File Dependencies
- Multi Threaded Tests
- Netstandard Test Projects
- Project Atomicity
- Project Build Platform And Configuration
- Rdi Data Point Location
- Test Atomicity
- Unique Test Names
- Using NCrunch With Source Control
- Reference
- Global Configuration
- Overview
- Auto Adjust Clashing Marker Colours
- Build Log Verbosity
- Build Process Memory Limit
- Capabilities Of This Computer
- Coverage Marker Style
- Cpu Cores Assigned To NCrunch Or Ide
- Custom Environment Variables
- Disable Global Hotkey
- Engine Hosting Strategy
- Fast Lane Threads
- Fast Lane Threshold
- Grid Maximum Reconnection Attempts
- Grid Reconnection Delay
- Impact Detection Mode
- Listening Port
- Log To Output Window
- Logging Verbosity
- Marker Colours
- Max Failing Test Trace Log Size
- Max Number Of Processing Threads
- Max Passing Test Trace Log Size
- Max Test Runners To Pool
- NCrunch Tool Window Colors
- Node Id (Name)
- Password
- Performance Aggregation Type
- Performance Display Sensitivity
- Pipeline Optimisation Priority
- Rdi Storage Settings
- Sliding Build Delay
- Snapshot Storage Directory
- Solution Storage Data Limit
- Spinner Colours
- Terminate Test Runners On Complete
- Test Process Memory Limit
- Tests To Execute On This Machine
- Text Output Font
- Workspace Base Path
- Solution Configuration
- Overview
- Additional Files For Grid Processing
- Additional Files To Include
- Allow Parallel Test Execution
- Allow Tests In Parallel With Themselves
- Infer Project References Using Assembly
- Instrumentation Mode
- NCrunch Cache Storage Path
- Only Consider Tests Outofdate If Impacted
- Project Config File Storage Path
- Show Coverage For Tests
- Show Metrics For Tests
- Tests To Execute Automatically
- Project Configuration
- Overview
- Additional Files To Include
- Allow Dynamic Code Contract Checks
- Allow Static Code Contract Checks
- Analyse Line Execution Times
- Autodetect Nuget Build Dependencies
- Build Priority
- Build Process Cpu Architecture
- Build Sdk
- Collect Control Flow During Execution
- Consider Inconclusive Tests As Passing
- Copied Project Dependencies
- Copy Referenced Assemblies To Workspace
- Custom Build Properties
- Data Storage File Size
- Default Test Timeout
- Detect Stack Overflow
- Enable Rdi
- Files Excluded From Auto Build
- Framework Utilisation Types
- Ignore This Component Completely
- Implicit Project Dependencies
- Include Static References In Workspace
- Instrument Output Assembly
- Method Data Limit
- Ms Test Thread Apartment State
- Preload Assembly References
- Prevent Signing Of Assembly
- Proxy Process File Path
- Rdi Cache Size
- Required Capabilities
- Restrict Tostring Usage
- Run Pre Or Post Build Events
- String Length Limit
- Track File Dependencies
- Use Build Configuration
- Use Build Platform
- Use Cpu Architecture
- Runtime Framework
- Overview
- Atomic Attribute
- Category Attribute
- Collect Control Flow Attribute
- Distribute By Capabilities
- Duplicate By Dimensions
- Enable Rdi Attribute
- Environment Class
- Exclusively Uses Attribute
- Inclusively Uses Attribute
- Isolated Attribute
- Method Data Limit Attribute
- Requires Capability Attribute
- Restrict Tostring Attribute
- Serial Attribute
- String Length Limit Attribute
- Timeout Attribute
- Uses Threads Attribute
- Global Configuration
- Troubleshooting
- Tools
- Keyboard Shortcuts
- Manual Installation Instructions
License Server Unique ID
Context
Under the terms of the NCrunch EULA, it is possible for a developer to use their NCrunch license on multiple machines, provided they are the only person using their license. To enable this, unlike many other software products, NCrunch will allocate license tokens to users rather than machines. This means each user must be uniquely identifiable to the NCrunch license server through their own ID.
When making use of a license server, it is required that each developer specifies their own unique ID in the license details window. In this way, the license server can identify them and allow them to make use of any license token already allocated to their ID.
Under NCrunch v2.15, the unique ID is referred to as a 'User Name' in the license details window. This was changed in v2.16.
Restrictions
The NCrunch license server will track concurrent use of unique IDs. If the same ID is used at the same time on more than one machine, the license server will remotely disable the NCrunch instance that has the earliest (oldest) connection time. Because of this, it is not possible to use the same unique ID between multiple users without frustration.
By always giving preference to the most recently connected NCrunch instance, this restriction should not create problems for users that may accidently leave NCrunch running on one machine and later enable the product on another (for example, if a developer left their work PC enabled and later logged in to work from home in the evening).
Overriding With User Login Name
From v2.17, the NCrunch license server has a setting that will force the user's login name to always be used as the unique ID, regardless of what the user specifies when connecting to the server. This creates a simplified scenario that can be useful on sites making use of Active Directory with unique login names. When this setting is enabled, the license server can only be used for NCrunch v2.17 clients and above (as prior versions of the client do not supply the necessary data).
Recommendations
It is strongly recommended to set a policy of assigning the 'My Unique ID' field for each user to be their company email address. In this way, the value is assured to be unique to each user. Because the unique ID is visible in the license server administration UI, setting it to an email address will also give a license administrator an easy way to contact a licensed user if there is a problem or their license needs to be reallocated.