arcus-azure / arcus-azure/arcus.testing
🚀 Testing Framework migration report
- Dominant language
- C#
- Stars
- 9
- Forks
- 6
- PR merge metrics
- No merged PRs in 30d
Description
Following list contains the entire report of the required changes we need to do to migrate the Testing Framework to `Arcus.Testing`. This issue acts as a parent issue for follow-up/specific issues along the way.
**Azure-related**
* [x] ~Azure API Management~ (built-in HTTP logging functionlity is available, custom is not much work to set up.)
* [x] ~Make authorized HTTP calls with `Authorization` header token~
* [x] ~Make authorized HTTP calls with client certificate~
* [x] ~`Arcus.Testing.Storage.Sql`~ (not much added-value, only counting records.)
* [x] ~Run SQL query, get item count~
* [x] `Arcus.Testing.Storage.Blob`
* [x] Load/download contents from storage (#93)
* [x] `Arcus.Testing.Storage.Cosmos`
* [x] Get/Set documents to storage (#94)
* [ ] Get/Set document trigger to storage
* [x] Azure Data Factory (#176)
* [x] Compare of flow data output
* [x] ~Get pipeline result~ (Azure SDK & `Arcus.Testing.Core` combo is enough)
* [x] Start/stop pipeline/dataflow
* [x] `Arcus.Testing.Messaging.EventHubs` (#265)
* [x] Send/receive messages from hub
* [x] ~`Arcus.Testing.KeyVault`~ (Azure SDK is enough as it only needs 'get' opertions)
* [x] ~Get secrets/certificates from vault~
* [ ] `Arcus.Testing.LogicApps` (was already developed by Arcus, but was repurposed in Testing Framework, could be that 70% of the functionality is already ahering the testing principles). Plus, see Microsoft's attempt: https://techcommunity.microsoft.com/blog/integrationsonazureblog/announcement-azure-logic-apps-standard-automated-testing-public-preview/4407814
* [ ] Enable/disable static result
* [ ] Trigger Logic App
* [ ] Get Logic App run
* [ ] `Arcus.Testing.ApplicationInsights`
* [ ] Get telemetry via query and type
* [x] `Arcus.Testing.ServiceBus`
* [x] Create/remove Topic subscription (#96)
* [x] Send/receive messages from Topic & Queue
* [x] Count messages from Topic & Queue (implicitly available by message filter that let's you receive messages on queues/topic subscriptions).
* [x] `Arcus.Testing.Storage.Table`
* [x] Insert/upsert/remove records in table (#97)
* [x] ~Get record count~ (`TableClient` is exposed for users to interact with the table themselves)
**Tech-independent**
* [x] `Arcus.Testing.Core` library
* [x] `DisposableCollection` #91
* [x] `TestConfig` #92
* [x] #104
* [x] #113
* [x] `Arcus.Testing.Assert` / CSV (#101)
* [x] Compare tables (w/ & w/o ordening)
* [x] `Arcus.Testing.Assert` / XML (#101)
* [x] Compare documents (w/ custom ignore nodes)
* [x] `Arcus.Testing.Assert` / JSON (#101)
* [x] Compare structures (w/ custom ignore objects)
* [x] `Arcus.Testing.Assert` / XSLT (#101)
* [x] Validates XSLT transformation from XML to (XML+extension, JSON, CSV)
* [ ] SharePoint
* [ ] Upload/Download files & their properties
Contributor guide
Research direction
Use this parent report to review the remaining unchecked migration areas, especially Arcus.Testing.LogicApps, Arcus.Testing.ApplicationInsights, and SharePoint. Start with the referenced follow-up issues and the existing Arcus.Testing libraries; the migration is done when the listed required capabilities have been addressed and their checklist items can be completed.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- azure, csharp
- Domain
- cloud, devtools, testing-qa
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 15/100