Automatically select main isolate instead of the test runner isolate when connecting to test runs
Mantenedores costumam responder em até 1 dia
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 3/5
- Tempo estimado
- 1-2 dias
- Facilidade para iniciantes
- 48/100
- Tipo de issue
- Bug
- Clareza
- Razoavelmente clara
- Status de atividade
- Pouca atividade
- Stack de tecnologia
- dart
- Domínio
- devtools, performance, testing
Direção de pesquisa
Reproduza o problema com bin/main.dart e test/cpu_profile_test.dart, seguindo as etapas de breakpoint e criação de perfil da CPU no relatório. Comece rastreando como o DevTools se conecta a uma execução de teste e seleciona um isolate; o trabalho estará concluído quando a criação de perfil da execução de teste capturar o trabalho em cpu_profile.calculate() e mostrar dados como o programa independente.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
I don't know if this is a DevTools issue or something else, but I'm also not sure how to determine which.
When running tests, CPU profiling never seems to collect any data. For example given a sample project with a bin/main.dart that calls a function in lib that blocks for 5s, and a test that does the same:
bin/main.dart
import 'package:cpu_profile/cpu_profile.dart' as cpu_profile;
void main(List<String> arguments) {
print('starting'); // breakpoint
cpu_profile.calculate();
print('done!'); // breakpoint
}
lib/cpu_profile.dart
int calculate() {
var start = DateTime.now();
while (start.difference(DateTime.now()).inSeconds.abs() < 5) {}
return 6 * 7;
}
test/cpu_profile_test.dart
import 'package:cpu_profile/cpu_profile.dart' as cpu_profile;
import 'package:test/test.dart';
void main() {
test('calculate', () {
print('starting'); // breakpoint
cpu_profile.calculate();
print('done!'); // breakpoint
});
}
For bin/main.dart:
- Open
bin/main.dart - Add breakpoints on the marked lines
- Run in debug mode and hit the first breakpoint
- Open DevTools CPU profile, enable profiling, and start recording
- Resume execution and wait for it to hit the second breakpoint
- Stop CPU profiling and observe the results
Perform the same steps but using the test instead, and the profiler doesn't show any data:
- Linguagem predominante
- Dart
- Estrelas
- 1.7k
- Forks
- 405
- Merge médio
- 3d 17h
- PRs com merge (30d)
- 12
Preparar o ambiente
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de flutter/devtools
-
cleanup P1
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 85/100
flutter/devtools#9973 · 3 comentários ·
Mantenedores costumam responder em até 1 dia
-
a: quality cost: low P2
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
flutter/devtools#9942 · 3 comentários ·
Mantenedores costumam responder em até 1 dia
-
contributions welcome cross-screen inspector-2.0-polish P2
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
flutter/devtools#8936 · 3 comentários ·
Mantenedores costumam responder em até 1 dia
-
cross-screen P3
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
Mantenedores costumam responder em até 1 dia
-
documentation good first issue P2
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 88/100
flutter/devtools#8293 · 2 comentários ·
Mantenedores costumam responder em até 1 dia
Todas as issues de flutter/devtools
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
-
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 88/100
BasedHardware/omi#19246 ·
Mantenedores costumam responder em até 1 dia
-
enhancement
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
atsign-foundation/noports#2945 ·
Mantenedores costumam responder em até 1 dia
-
area-clientside-dartpad
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
dart-lang/dart-pad#3947 · 1 reação ·
Mantenedores costumam responder em até 1 dia