Aller au contenu principal

Git Integration

Aethrix Studio includes built-in Git support for version-controlling automation projects (.aprj files) and their associated code and resource files.

When to Use​

  • Tracking changes to test projects over time
  • Collaborating with team members on test suites
  • Reviewing test changes before merging
  • Rolling back to a known-good test configuration

Clone from Git​

The fastest way to start is to clone an existing repository:

  1. In the Test Automation toolbar, click Clone (account_tree).
  2. The Clone from Git wizard opens with four steps:
StepWhat you provide
Step 1 — RepositoryThe repository URL (HTTPS) and an optional branch. Works with GitHub, GitHub Enterprise, Azure DevOps, GitLab, Bitbucket, and any public/private Git host.
Step 2 — DestinationA parent folder and an optional new subfolder. Aethrix refuses any folder that already contains files.
Step 3 — AuthenticationHow to authenticate: System credentials (Git Credential Manager — recommended), Personal access token (PAT), or Username and password.
Step 4 — Clone & LoadAethrix downloads the repository, then locates the .aprj file inside it and loads it into the workspace. If none or several are found, you choose which to open (or create a new project in the repository).

Git Operations on a Project​

For a project that already lives inside a Git working directory, right-click the project node in the tree and expand the Git submenu:

OperationDescription
Git PullFetch and merge changes from the remote.
Git CommitStage and commit local changes.
Git PushPush committed changes to the remote.

A git status badge is shown on the project node in the tree, indicating its current synchronization state.

Reviewing Changes​

Before committing, open Git Manager from the project context menu. It hosts three complementary viewers:

  • Change Viewer (GitChangeViewer) — lists staged vs. unstaged files with inline status icons. Click a file to preview its diff.
  • Diff Viewer (GitDiffViewer) — side-by-side text diff with syntax highlighting for .aprj/.cs/resource files.
  • Semantic Diff Viewer (SemanticDiffViewer) — structural diff for automation projects (suites/cases/steps) that highlights added/removed test steps instead of raw XML.

:::info Screenshot needed — light/dark 📸 git-change-viewer-light.png and git-change-viewer-dark.png — Git Manager with Change Viewer and Diff Viewer :::

For a local folder that is not yet a repository, the Initialize Repository control (GitRepoInitializeControl) offers one-click git init plus optional remote linking.

What Gets Versioned​

FileVersioned?Notes
.aprj project fileYesProject definition
Code files (.cs)YesC# helpers and scripts
Resource filesYesCSV, JSON fixtures
Report outputNoGenerated files — add to .gitignore
Encryption keysNoNever commit keys

CI/CD Integration​

Clone the repository on your CI agent and run tests:

git clone https://dev.azure.com/org/project/_git/test-repo
cd test-repo
aeth run MyProject.aprj --env ci --output ./reports --junit

Best Practices​

  • Use .gitignore to exclude report outputs, temporary files, and local settings.
  • Store encryption keys in CI/CD secret variables — never in the repository.
  • Commit test data fixtures alongside the project.
  • Use meaningful commit messages that describe what changed in the test logic.

See Also​