Skip to content

Commit

Permalink
[TF-1990] Update documentation with latest changes doc.saucelabs.com
Browse files Browse the repository at this point in the history
- Adding documentation for Symbols/dSYM upload
  • Loading branch information
simon-sarrafi committed Sep 6, 2024
1 parent c3b08ec commit 1ce0731
Show file tree
Hide file tree
Showing 5 changed files with 98 additions and 2 deletions.
10 changes: 8 additions & 2 deletions docs/testfairy/api-reference/upload-api.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ Streamline your build process and upload APKs or IPAs directly to TestFairy.
<tbody>
<tr>
<td><code>symbols_file</code></td>
<td><p><small>| OPTIONAL |</small></p><p>Symbols mapping file. For iOS, this is a path to the <strong>zipped</strong> symbols file. For Android, this is the path to the mappings.txt file</p></td>
<td><p><small>| OPTIONAL |</small></p><p>Symbols mapping file. For iOS, this is a path to the <strong>zipped</strong> symbols file (dSYM). For Android, this is the path to the <strong>.txt</strong> file</p></td>
</tr>
</tbody>
<tbody>
Expand Down Expand Up @@ -180,7 +180,7 @@ In the case of an error, TestFairy returns a JSON with `status` => `fail` and `c
<td colSpan='2'>Invalid file.</td>
</tr>
</tbody>
</table>
```json title="Sample Response"
Expand Down Expand Up @@ -220,3 +220,9 @@ curl https://upload.testfairy.com/api/upload \
```
Metadata is displayed and can be searched on in App Versions page by clicking on an app from the Dashboard. You can also view them on a single version's settings page.

### Can I attach the symbols file to my app to download it later?

Yes! You can attach your dSYM zipped for iOS / Text file .txt for Android app while uploading the app. Check out the [Upload/Download Symbols file] documentation for more details.

[Upload/Download Symbols file]: /testfairy/app-distribution/symbols-file/
84 changes: 84 additions & 0 deletions docs/testfairy/app-distribution/symbols-file.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
---
id: symbols-file
title: Upload/download Symbols file
sidebar_label: Upload/download Symbols file
---

import useBaseUrl from '@docusaurus/useBaseUrl';
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';

### Uploading Symbols Files

To ensure accurate symbolication and better management of your app's debug information, it's recommended to upload mapping files (symbols) through the API. Follow these steps to attach the file during the app upload process:

### 1. Prepare the Symbols File

Ensure you have the mapping file (symbols) that corresponds to your app version. This file is crucial for decoding crash reports and understanding stack traces.

### 2. Upload the File via API

You can upload the mapping file by using the API provided by Sauce Labs. Here's a general approach:

- **Endpoint:** Use the appropriate API endpoint for uploading your app. For example:

- **Attachment:** Include the mapping file `symbols_file` as part of your app submission. For instance:

Android:

```bash
curl https://upload.testfairy.com/api/upload \
-F api_key='your_api_key' \
-F [email protected] \
-F [email protected]
```

IOS:

```bash
curl https://upload.testfairy.com/api/upload \
-F api_key='your_api_key' \
-F [email protected] \
-F [email protected]
```

### Accessing Your Symbols File

After a successful upload via the API, the response will include a URL to download your Symbols file.

Here’s an example of the relevant portion of the API response:

```json
{
"status": "ok",
...
"symbols_download_url": "https://mobile.testfairy.com/api/xxx/projects/xxx/builds/xxx/symbols/download/",
...
}
```

## Accessing Symbols File Through the Dashboard

To download your symbols file through the Sauce Labs dashboard, follow these steps:

1. **Log In to Your Dashboard**

Log in to your [Sauce Labs dashboard](https://saucelabs.com).

2. **Navigate to Uploaded Apps**

From the sidebar menu go to Mobile Testing and to the section where your uploaded apps are listed. Find the app that has the symbols file attached to it.

3. **Access App Details**

- Locate the app in the list and click on the gear icon (⚙️) at the end of the row.

4. **Download Symbols File**

- In the details page, click on **More**.
- If a symbols file has been uploaded, you will see a **Download** link.
- Click the **Download** link to retrieve your symbols file.

By following these steps, you can easily access and download your symbols file from the dashboard.

<img src={useBaseUrl('/img/testfairy/app-distribution/download-symbols-file-dashboard.png')} alt="add tester email"/>
5 changes: 5 additions & 0 deletions docs/testfairy/using-testfairy/uploading-an-app.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,3 +49,8 @@ To update a build, upload the same file again (that is., the same build with the
### Uploading a New Version

To upload a new build (a new version of the same app), upload the new version as you uploaded the old version. TestFairy identifies that both apps have the same package name (bundle identifier) and group them together in the same project.

### Symbols or Mapping file

In iOS and Android development, symbols or mapping files refer to files used to help debug and analyze crash reports. They are essential when apps are built with optimization settings, such as code obfuscation or stripping debug information, which make crash reports harder to read.
If you're using the API to upload your app, you can attach this file to your build for easy retrieval later if needed.
1 change: 1 addition & 0 deletions sidebars.js
Original file line number Diff line number Diff line change
Expand Up @@ -1166,6 +1166,7 @@ module.exports = {
'testfairy/app-distribution/app-expiration',
'testfairy/app-distribution/release-notes',
'testfairy/app-distribution/tags',
'testfairy/app-distribution/symbols-file',
],
},
{
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 1ce0731

Please sign in to comment.